96421 98
275621691 242060166 741567790 992277462 596235797 438097342 193902597 897764523 663663313 644359978 560854172 342201753 957768111 781489185 748104076 448200163 219385667 31680369 673628419 208198783 591505651 355808473 115184962 712872600 657755516 264659344 90631455 827658252 51180398 835788477 850052 644319726 661001643 521375740 741142766 823091461 749218284 884859871 318481390 763972172 522278204 143677035 952527276 462192496 995094651 413038487 599556959 858888021 232020700 483234768 182975958 764875921 147465319 202409080 430096370 658826224 347453048 540371042 597743913 697856238 397873214 843125848 787375621 779815488 548525373 843405206 40913059 926560843 578724812 638427212 482622261 901039019 389447064 681519647 295481984 922624942 855886367 911216808 708687967 533226199 520883510 679120371 592988222 537021787 416915332 969680642 285880735 195896743 532861700 931370568 391376025 782849752 548240263 712518703 679649876 384862017 290300208 963639186 850857870 424716521 769719542 591385155 398988057 309741578 188100389 930981254 492281434 419734419 626874845 236477076 619666380 334557607 433935762 968185114 590648187 863419420 128297866 258895799 134966154 504586493 858597986 947722369 225824941 92899081 292958858 78691713 364163247 16327729 756419780 577223986 435796206 214489118 836473001 657629446 931762394 346394280 919376676 469238753 320689785 268739680 484266740 812978332 714668774 906109703 678656302 531875459 607426254 998399509 232654778 238130648 964923121 743302963 383025617 258858062 368612007 330589377 899039365 247396238 501859416 353018449 865337145 64244149 90708995 288854826 426847781 387964372 471970232 629000902 607646931 654569583 603725342 723549524 15284901 393142271 541683950 630552630 473228108 361355632 830000501 411144836 499114834 305311907 904734486 70361480 738547346 780454637 101788614 346589504 817465018 337611670 743650447 240341728 162439632 130451036 815687693 331860301 614533802 3917293 490893044 494176674 525443444 136098928 540888200 283531695 58228782 518169597 130267427 999622773 271090476 103578400 901565618 629740203 273680788 118265690 159790392 63383868 363931107 907424160 390173514 717421511 146191465 712688858 657947282 283348254 749943240 567608421 366571597 832785863 833938809 497830546 404401612 614357630 742594631 31809317 283140855 198226609 905904849 269004758 470595781 635439362 532805644 103794387 283872709 979162057 739079103 400595260 508198040 926308240 324445446 965668262 281736308 797179285 762915024 920975001 599444387 445179467 470465121 644442898 513805826 572097497 71501265 177663746 146840451 43151001 412912266 273481676 589848235 3693466 985399757 985668299 814158100 812883743 910384430 417316298 957919212 16769310 799189268 897301898 919102069 877155266 949113146 690327103 690313859 599922154 371981617 199878675 702040321 5872552 411789532 261991842 448917100 561766082 550802674 726415485 625914198 979275060 26852735 108292007 342887140 148347307 790644323 417742875 257364305 392044044 478926289 785750851 680547433 533627883 264465618 216813954 575664142 182081300 105213888 457881772 442280631 940265478 198469835 569250441 848544748 375941235 185956471 854654294 828238539 679456194 814807580 916250691 55831686 340085645 943463525 215062517 453364451 373536803 802927057 360239878 562262203 151068423 550662454 705115264 320258171 841764719 524865081 715811430 418068134 331643078 871689174 758378028 814005840 902696234 174298846 5216569 507830692 925019630 188768372 104728428 694004832 649515546 225081488 814652820 102162004 557148390 837976700 180870135 201882599 884126787 353549145 943284428 805535890 806594386 567326875 410488001 64101218 474499818 31742601 835673461 580465018 555712534 162839230 403427839 567979663 676652181 647374507 260299621 334259050 964768089 158782994 904333606 443649130 592810760 679154572 432273841 640107007 58767998 324752645 146361068 229610800 214456649 353924667 927825582 188678678 488813612 313720642 965832516 623327839 258567068 614940418 937594864 465166796 219393606 1319351 428080485 370867 994205063 838563697 501544525 225370237 848383474 161434770 614693315 415260713 502135246 884681298 744079321 829448391 400310678 754067774 502898707 918333439 119018615 963303349 455094763 642689672 401543893 940244074 268229963 70886064 225060550 744144101 790283029 539948763 882682517 383464450 899302815 642402812 992253248 989525616 180347183 906245661 968568059 833478450 398339716 952398045 701047723 946642978 838261069 83434477 338174316 649163881 953081519 866901906 358582028 458957065 673434563 387581222 615474829 606108499 526061077 651183511 996104615 257543537 878404646 69961703 122400323 640270045 926923243 143104938 379338497 244814568 779653453 412327819 521402291 78168372 847791783 539698119 751052768 2752058 85619019 992477872 723889474 944733638 22883837 440608043 499874376 383876981 536577910 582264627 375413909 72220990 545268450 552192596 415895935 976902118 955672675 287441968 940160145 599190410 892721548 604925182 522009609 66058777 825999334 253172230 699245914 792070104 478047086 796893222 695306156 453928924 615073557 923647056 558507607 708393107 116148543 924048905 147922284 807443516 620890181 189569004 472922668 389585258 877307123 597102629 777086350 856827269 124603146 997981431 490908861 845084488 951272383 567403830 998491032 728098628 485460538 990783694 165668657 372839004 340196888 35029818 174284367 195665991 292634090 625295885 585709547 483721234 262949300 774026605 440221110 412252315 849220462 440232595 782252690 972160791 778807175 509956172 928167701 404907404 392614749 483890043 930466825 525288280 64102853 597083029 28834543 427654056 155083146 593781539 507167351 559623682 379237862 410772547 409786633 123889852 951652106 829567784 492924223 651374978 189146268 47798422 413756008 149786580 621805620 298400358 660095239 224392581 801222110 186691592 963259731 295274813 872908955 367775484 663207861 77865720 775921375 516439896 753202508 750843013 64858388 604164165 863864940 606094345 947652118 36406402 232619802 779403385 471824822 418340064 198925714 328924707 413942583 871997123 69524162 38300966 281305556 645711016 954847436 589969397 329881912 607953561 619324296 94254040 880796164 694268602 130853119 325623146 717586508 774143936 142881265 100917020 33959450 458335605 520426576 891269041 797455338 320035126 689673667 791370432 618964781 745823861 818730532 965178166 124507846 809122615 455132674 543108561 24055183 432245398 322008864 309514661 688260821 343344448 132884724 824216731 218928856 893638134 704312617 783750637 358234957 603193870 498216477 715044012 287849435 793069042 132718436 556834362 634447009 166580639 111388739 835419856 685318319 264281895 927093813 430429177 488667784 63127343 198132074 73472277 303341222 859107185 419342147 643188695 957821942 299428668 255794392 418363592 928952408 284125679 162448754 695090626 108729120 726812545 404815633 418643573 153647000 315797756 978567398 388838117 710737276 60671741 780590042 721291754 28342652 651696182 644529926 586680750 250510781 544915437 833873465 668403251 481838168 300681338 704637558 834474955 356783066 850069965 986313842 470473630 676773315 525459941 709560090 541749287 7507719 531646810 656611851 481882551 972750480 471823316 798455321 188662513 342845881 859084433 708000201 57480524 576344276 351007459 643498966 701480853 536608678 472930480 19773871 169965162 365046246 852091120 408827895 297518271 929800129 843251763 961806084 349529693 763913305 255871769 473726818 535619678 484764225 143057623 466363469 157989811 776621571 269417400 791981626 91895710 74581658 678698394 422196558 328336952 91870712 215414893 795742181 549334252 401915265 984287416 802302221 532145914 838664334 860973076 37279496 531203061 507010796 241514926 244040654 563503173 877653850 461255369 99166088 600929702 528271886 758607162 549005078 235127719 424467761 906359786 374204554 326775852 641358174 263808856 670696363 428550125 807510055 191333397 748821107 669769973 31876752 929405253 486569362 119804195 41670546 425226020 947904744 270340268 134014618 405050751 90321934 250906263 898420231 346279479 665187022 513445696 232428975 58986434 782882727 780802261 63005530 969841578 226330698 414951900 251183942 398627595 703445023 545317291 994794145 872696089 857876161 834516719 182888978 9808792 213344382 707510822 312838193 414685538 513183960 735383076 250568715 935221477 796032774 877201554 328732575 538742434 272520820 423246954 239469155 770192303 697145150 987195517 684752319 418841654 46031033 69126637 849970576 429475828 659352043 332468403 849776295 180899003 367163406 794582554 878826312 110862576 818100497 819165506 190859692 244258317 832070678 229830558 119948927 488842016 279868405 582636406 486554466 196904779 528109496 854730342 393060714 225704514 853074717 631152605 927946143 384508624 300150552 998815135 712553342 748081490 395412046 918278212 381002616 122186298 531339162 198165943 862042993 975280269 414056587 656041911 914645825 859445350 667842532 33217625 538834230 312557425 356027420 114873988 603125392 131884912 736433628 723803251 79481860 538179258 892793475 109927479 764998714 740965559 139830437 873377843 103001679 593676389 682827400 769560478 411694164 974063830 633077925 912606980 915100621 336407472 535646253 516238533 348134450 100917163 320293762 9062805 46128497 644665623 65148601 954162938 117231722 921016915 783822367 637993426 391320434 706371671 658765489 855980746 556712145 411273515 566295714 887038695 295287108 525749358 695972825 868805121 641562235 327107536 764200560 547296067 986057116 971051415 980375350 399136685 841834430 824717086 553041966 48009874 862422127 311253330 615383310 67605530 547980847 86598451 754909633 258317249 838931699 767247449 487762149 182312150 195986594 744191341 57035342 642971389 98913691 390949547 548674433 819012782 928894766 785996391 922239034 140501428 605710366 457962372 184880870 722831278 976258854 26096126 335559466 95497873 484778352 173207906 890188890 604679972 188593439 21228881 267679746 114896258 468948935 927006209 97155681 247410076 842968815 458894523 583353065 27460533 454457494 882317918 883209409 510731492 148401579 641925595 922613059 586761621 438015636 126109367 940258942 194936328 438532008 289947532 11220405 895895249 680421813 766655111 687380957 239936854 89137787 133418476 203515427 4089428 560678190 415213198 586929764 226296411 127505656 182022231 838532532 874335821 269227380 309132998 922091736 220866019 852621108 558576492 979688139 620186664 682266173 277453934 412285245 694821884 502487686 464793350 503624463 143686802 561499261 799678978 317924056 130350066 696095105 158891075 82913635 622734200 469223529 238895936 946652719 39254611 134070779 313449345 786576878 858715143 377680758 627078948 810925318 631034091 89095433 639532122 44080659 30348972 117929049 354877931 593408099 864515272 578676479 469057454 499707000 698544404 918924552 98270994 740429962 581600311 379839347 668944281 651815682 976710188 653000374 371426135 342798592 88708292 866046778 321705847 67230423 72566818 127306202 274368694 595761804 596144445 588446824 878025702 984194650 861604961 452598824 491556973 547139888 65365934 854751315 813802691 46546225 276740504 452907670 233211127 889081907 690876773 68177296 442623275 870471233 54963122 446064471 858823188 405180953 647792878 558757876 530802043 526642607 742483422 649069538 940083390 665988776 796989464 520681619 746507087 362212064 558189703 800999659 523119924 319823589 488972269 680668611 14001542 754055289 349544284 660583015 10762482 758424851 843835580 725007641 336325691 199663199 82300233 549917580 716681397 494692026 412227090 414618473 550328012 769120183 469606523 252883149 175237243 332166300 139428028 61699785 115202518 441785573 153881695 453548513 415899008 631240896 649554118 109038734 382139701 816917904 617108386 667017148 259839554 186544235 711114621 613578572 624343048 851400348 383827506 247534227 16891517 159061537 544209263 71934170 17089706 407886893 918780730 328656860 637459758 288497063 977330793 282772554 570814649 534381482 242366248 365901386 75119250 459779075 920008055 290871284 304806674 52474294 875232682 853133780 21710375 109181306 571448039 580214635 558435282 709378616 62873515 859016110 675495081 581971344 188137542 432553861 946261589 166100051 253410650 670970957 686997525 944516362 590709856 489868375 677364026 475783790 661318690 396327783 728846761 483260910 873030466 64746293 449377372 297458220 159019698 711709679 403442145 583652224 122286650 201857205 150069977 818288755 700620534 855583772 473128570 562471493 730526677 183391404 296166158 168280425 638720539 566021474 959502450 740212740 334236127 738329135 653121176 217696369 593816206 155614326 79966213 481229759 92558182 13290386 927010900 455539761 986565116 374377294 252096689 763059133 283774135 215634539 468168286 95788686 463675730 555971357 183034161 799288707 851435870 207987086 201315860 855434413 426833085 990650970 74119044 835062741 915917865 832926994 501286931 900206835 736027051 139885241 820290279 258147512 136458532 887541834 180263992 704536325 625242823 323902768 472468437 389020530 323916701 976432588 987177888 426808776 968508416 264519154 597529101 86262919 642173984 447298412 60849831 132766049 640447105 209394294 425924748 988985277 454620795 801870400 513080556 1690933 859283129 864929136 772880269 26097688 320856506 238298269 8397130 84181993 311294547 975415509 732912271 292552158 852085291 940691991 160204255 510204257 779504702 708752346 495729231 90186899 658233691 583015301 667021832 78703812 732787878 163922676 312501448 248363772 769290774 291863290 357749858 113296502 633093880 269885913 111807289 414461727 508980842 799811531 187134153 697313307 647163361 343497085 716804127 355608641 14981540 484336271 761058395 797292186 23626574 260939285 223801653 57230566 12895824 776340249 714246518 863035414 205964908 234895638 632984954 288280275 651607099 672715902 810717621 967724534 582221224 285739830 537611562 787232014 505007731 751740181 509031413 739336413 544810672 774660200 732852675 231616475 475076933 427239025 433287253 84206770 886960239 971630051 108904961 955656896 382849085 417580904 366272561 440871576 796050708 115898395 884475361 526678657 469754409 417340942 793883685 793103605 994046474 258588358 883915425 516023075 708226838 348103610 631927311 557201262 343145472 467707095 963547325 958708717 745777744 109968127 116574476 986143977 786171106 541436549 764056562 611893601 833053285 879993266 296417657 841063305 427076060 90800452 355504958 285223238 896330529 200339178 678642930 753342644 915428189 224674249 896992989 858699425 307433873 903849210 865014358 940697359 591941393 242359817 223706700 939073973 26146308 694081912 251095488 994009215 999732197 49059642 337266760 748695050 422837765 348321080 304449678 259686953 915247110 302695375 132105423 68268131 937246817 99632720 640736605 155274866 11248353 707568511 562478878 58542789 703394086 323771413 622286346 641201407 738731300 569719102 159218608 921586293 384816545 454006556 714018738 322576052 722774714 992978242 686244932 225767930 410084958 343949113 936212145 713337784 463167185 165939454 832389590 579997974 909414187 168380802 768338085 185484143 665824215 628326185 665285796 444925648 589643029 833894476 428262507 806690941 543329144 839831991 481931306 927814509 639904360 71307051 723755552 733925065 805883040 829950429 352148261 563313777 487046321 217805045 571441953 938570103 884079486 526018576 897041810 741568673 929416894 792381375 602798603 217484011 946008446 703148038 80161967 609918979 264989852 645958878 702553274 31680716 639082317 747989171 171406072 608566235 189210007 172711142 876496460 550408701 992827096 886541388 295602731 957596335 110168125 610122669 452841246 149744804 781539660 419893830 393808708 495240259 162064987 652470343 676380365 646453799 42757398 812422486 33628800 233580445 58993405 173297419 204269622 546977065 77554659 752705906 125899100 189479169 213715568 929004428 239987061 646527888 789518496 206767565 253403798 3935221 371031106 158476959 993547241 602832001 848086395 187047646 233561642 64651581 478393152 336220251 311818285 278377058 509616607 234468442 128190806 284663006 143402871 970706963 621656607 809840854 575229562 605737268 899821718 388879902 522850354 207089757 816080092 733650627 254019898 440411042 421197735 573074306 875440641 518862093 256939712 18508366 684556619 60504346 498444678 670081230 513799855 555523898 311302506 670359260 133936409 639775824 743472241 91162375 419532618 205508919 347621301 747968786 377261139 640734009 567730148 797541491 848985630 785930393 303392703 315737301 582584293 774129419 59960477 198537878 859625657 431958583 398790885 211349833 245486588 955795513 104153751 983654454 952132071 533234724 916327364 947288277 835201029 913176698 877545234 171630423 88962486 321148341 63341113 462109 920267949 48960706 433165960 516638014 601702771 626720129 740346720 479640838 640848354 535347014 257625784 613729905 144644010 134694747 687299480 143533748 186603215 794126716 173273758 129027253 102962728 21299289 460522620 749275022 51750882 650035735 641457271 435883790 979597820 984597200 904275178 595974199 715666121 986576142 958035905 522439105 582897521 889375316 403393279 780923030 825257071 873586581 42032952 593657428 467714580 662735291 879850519 932464590 30320899 319962657 596635353 347207563 345962675 426456346 255074513 72414790 38632944 292083304 20725218 334498156 963614043 59983813 238704904 964989345 266760165 181470045 325609167 174103355 990826328 418725458 589252058 758769349 989259470 473433399 991305566 131672446 460723512 359952534 458182564 355211735 579510232 109644650 776934538 110718457 343301831 128474533 461209091 526258237 464937328 698921132 76401810 207134641 427234579 844938198 263392723 991884442 958101315 820004080 144838899 584398060 889951336 879115963 962984243 891714260 63992894 506733421 207600232 757538095 727259220 972426028 580019070 11903504 982072462 963847318 910185200 440225086 79093668 607357756 951512402 5247667 240711073 29558306 483904968 845112094 673612388 139737665 407321228 486981218 697192994 413551878 438487916 946117141 190885858 652170448 471280201 567810562 114639872 976162165 557202841 613248167 361345194 437818046 799616229 503565240 220023398 486548710 204794188 42798746 156149386 234913055 266766846 269775081 680128451 747195917 286361283 139838706 552895119 643939400 472984690 949665849 818912194 596368095 913283962 88695285 558924549 435685840 209670748 816183695 231978834 340823185 724111406 235385639 163673978 738632842 414396698 657271823 603715231 757391256 422717149 698452814 811321530 91925644 197367112 404610590 953603350 652899754 542508226 66881134 439978195 100841259 268818117 969644896 156862308 871005115 152015453 234273228 105046801 796719355 850434220 365185724 322393462 135202304 790288744 102766062 431206402 812715474 290051419 932675669 326310521 815135726 737288930 789777560 821774707 676261061 44780655 907935634 609191642 969331771 509685000 298244816 434922608 532939816 311803589 125632278 722736199 711693530 133464917 804090074 138678599 995541906 751435386 635778247 821060523 630917378 29542024 237420604 227632516 110037461 137264362 692348363 302679349 390893351 156268702 357357498 150046709 773379849 312923828 240768645 51817040 38785279 63044818 525712218 885453478 667182721 629224371 430907035 169039787 529410941 365758883 360442976 339557605 472447699 502143237 823787250 545223986 269778136 507357389 442209105 8164671 38903252 842395911 964147120 884160529 40260228 954541902 588735987 40732544 170464920 116352853 776799288 519040695 242997558 816787298 84554571 196894390 895041397 856273614 62675248 851407056 175671011 371037318 786993565 25114413 108886528 674237837 823377021 348637001 80276673 924487544 378145902 425706099 213592846 358243056 650685252 977363023 403219267 365019188 115460228 710734677 931863731 899372436 679920105 525023055 710841888 280035831 197036003 885854687 553158213 818156374 802489875 442573047 678015052 872143166 271397841 16826207 332827736 166051666 340050086 259259186 676481021 632876999 245216978 274712161 804164803 455332327 157018567 418770734 185025190 623867534 101637292 520374963 247008409 714952880 940539099 860394329 202876158 887072721 534366819 448909665 168729647 112191627 44629638 124850014 41780985 779241740 500675644 128137401 774894876 788370325 543254703 508500012 369014220 353607420 505992637 863192648 349932595 148387627 344931449 663896559 346197484 180547487 599724971 264123610 207807882 709742569 12371019 878054420 739200783 607583792 706354185 657028220 994450549 620005294 37955016 198075208 828320297 596162351 17754655 870526077 874792330 165669781 404443095 250431864 413726063 122026582 610928 390739304 269554846 805855228 266064539 276366289 109631574 326953636 935561409 471872266 945510086 811544192 534200699 82358976 819644819 769291861 508806167 524288113 618773590 185148414 733999898 633331698 310480156 730604775 183631033 2295786 665475812 29962386 859779422 103527508 933146149 336812309 741186601 305465089 852874565 927691162 955913580 387495443 979141410 734051551 643546414 433315460 697036173 135380404 947092393 934057629 195341771 265667455 817222605 426334335 836491027 995129019 398222779 404623517 719701778 337659764 792729418 473257024 931855977 137097164 863774853 161827842 414933806 455323258 601666090 128248403 917739879 39753030 976543789 580375544 256671122 335315342 511514675 761052294 934311200 771005125 164319768 235509995 624623349 469559534 695000169 155572710 573543402 723322661 863025898 963649674 513588044 683355158 314967826 99161279 13663578 152046724 426353290 496009153 848464330 826642372 126412210 363455647 431560772 546015295 396483100 809224381 886993637 262885876 821428495 144101459 514064062 503518451 90665477 169720043 804882515 716291555 16256813 708509671 412925981 147225725 319494634 390991096 536523528 303612942 521661778 716996776 664047862 498930169 796647599 739422417 448337209 286892595 175757314 183986468 367580957 928472517 472635515 328661412 358761564 916902734 713319170 75809064 631188904 590333822 316452018 361965020 263147300 826808732 549935960 116774848 974751979 583826945 910573048 550929192 968173960 372933275 42138440 388485946 828340860 351741291 634745396 334863475 485450940 583721223 634552920 216354082 636464944 234478361 640718473 337672684 905044277 916725470 692327245 262688326 310826780 17500583 391582045 502739198 42684585 191252827 226792490 258561715 731101076 659110132 917805654 27499608 213239820 703064317 935413814 945864629 581602607 929700891 86412375 969362918 255770514 55081345 917636598 206148570 217955263 201333626 562052486 649182933 278736562 398955491 131842862 547259630 680795228 902757037 910052681 663679890 838833185 50481760 258760932 429946879 216757593 938357907 233389635 354625994 266046418 682926197 830716252 709998938 978181708 871824199 63911002 206920810 836974332 98905312 558145563 232764555 307592714 733081128 873258163 404816799 788289554 4808605 34843111 41504863 197322407 19706833 914156979 622531287 401184460 77075433 912410309 996930789 774150009 444988960 142876415 397503165 744015388 975401026 420216824 286829927 534006037 503653425 775978364 558420287 606486072 848873572 448761352 270310517 832212815 536081507 709388623 512768395 532892822 47975756 633435831 550770138 444146493 471738449 888000989 387559437 108100586 945797432 315269389 631119523 354642740 925985497 153062346 526378609 707509289 263211940 763471692 919726878 210823369 51537944 694095613 218916262 358478984 480788301 13932795 767212760 238434000 960684395 823021722 568657880 739197821 161839153 305077983 616222877 108471647 636811119 287347461 652677236 79953083 468384140 221750012 207024763 386992586 706368000 397763557 268802087 809907513 106000347 911200919 441700287 498970792 783724605 516632094 537070302 311807275 770231516 966627382 786515189 186516940 656386177 101367252 308464070 665381382 957232523 560477598 218658794 158500428 40825450 34195565 412856652 888321152 160993829 984278482 117579692 109829244 408989909 911923343 309563166 675753101 175217192 429382938 92047496 61458930 209574879 615976477 998585895 571685729 784903247 925883640 801503754 490102147 843148516 391898174 138897558 98156404 799818394 636225076 826984192 185153348 667285634 29436245 12200918 599321208 108129347 877521104 536315255 809506953 329037974 846973704 440920726 365377891 737286089 986882067 538474683 601608168 671390781 782141500 150010561 168366187 360320233 988555394 205401433 504557877 207296468 99291926 685849478 677444868 828205726 458594273 390965024 970084743 990957304 818882299 781951313 487943139 489416999 211727157 773546266 82676017 839277701 490645648 163019215 45004029 578464256 261875908 939889047 17233353 673793178 684958138 221813741 538399112 32894439 195614738 532121122 941075491 833567890 649816990 84024280 716975608 410133720 603443685 780192648 752087125 597560075 151112865 236796157 170251777 219358224 65513537 202910167 50033588 604266465 476305512 755241482 120250523 691975693 992887916 602757212 18501845 174555187 957836760 767765738 907985400 940760202 895407338 395607971 196271500 898547804 534490902 766128843 641042830 956619399 311850881 791895930 89455343 911913979 402763142 928010779 759420947 454526526 628784949 252676845 762613075 440853483 488216015 425889413 810718587 533103406 969567819 768512074 271574092 104393802 499674069 913214200 899880187 242233363 370242633 870879518 665220272 599705204 203114172 917311392 808116489 208816363 456038900 784839221 862168724 533208840 210796779 445721578 517073240 752457458 807482704 577546653 395952973 526367713 661285893 582987906 434747615 67567269 640520098 20133026 996879727 458352158 769228529 583778647 611233234 650874817 976984432 33846738 931857104 158857754 242108370 988965269 923499942 150072132 482089086 52010745 589509765 648601459 484717582 385637802 499213584 808422762 625250770 189159206 851318498 820432645 130562635 895093569 178045446 430656433 768446896 195195043 307690365 249757423 201506412 758764872 465751996 343849173 316880285 711749375 156438827 5505676 18771863 719001580 467937959 464237267 778401376 174616327 640735232 312132730 182559793 993083547 977991804 110864104 322603003 954491079 40867666 852544662 671722463 531353600 748726832 524871570 92203445 606554509 203398070 971885565 836887430 5370890 956791801 177920141 314393618 597848550 901070593 979747596 399344459 199436261 5720394 933103319 552129752 739443102 715107399 778490719 227583635 402989565 26765018 262076587 934558476 664606147 897432030 304175061 744981507 146999297 45908638 35783049 812615921 26194593 303090522 582664329 923405184 256645853 18657225 57582635 876932623 482723782 202617234 46803161 263101999 197655230 72176338 333397136 157859624 903467518 744928409 488466786 370743925 199572241 768016236 568252404 589259843 723466583 615380933 310967808 116003830 244528259 819886222 788045524 239473829 155689246 153378730 845214674 275006361 940768513 455143021 110387950 9833682 892622815 832396318 450220851 175231874 653648825 702317180 955342142 34914447 276025191 757017142 606688705 956136213 187514134 93096818 971806210 681568482 773479109 730311239 239773785 418950905 423420103 151202626 827533493 62214672 454280259 323216869 242644760 383931665 99162551 86664483 215363094 490266013 177040753 789699046 819277659 121467012 836470805 213776778 378529314 919428686 678351130 721516639 846789566 119102901 754585420 53862954 379590165 925536297 686804812 900138148 556682271 839148107 161040907 994220538 766811756 622114930 795235667 145008971 995004315 730154281 385613886 23030061 518492388 541404590 86198716 721770537 434272399 554875509 331372306 779756346 226699899 963029924 395144790 511280722 994077848 686359444 238784244 314564310 806720877 227895638 991454252 214362141 42740371 89212204 838187921 237707252 1951031 527650059 98994571 610864925 57544348 947100448 24098774 739775435 966274711 33004616 739624961 266081319 373708305 721935510 980240368 987793615 143067529 164563921 59752539 542192466 821703567 914327027 586544461 127389877 48582474 562168235 659514533 340036081 868079859 802775772 159636632 388492914 628351064 167425820 898528301 693097625 482346842 26533942 223991743 857404987 406001775 665674920 377477503 31622433 198070560 293234213 451134960 821266822 530037900 248036373 271496297 337548444 697681380 519419920 659004823 273368839 574875373 455303271 625747960 12407648 212564097 935743131 254113376 155712691 117329678 89316836 913739384 575229185 738665237 50110379 281611578 241826751 338967468 9039888 289342327 550693461 923164925 54419045 506833489 104572065 659210949 219980208 154256321 572417393 550764758 500731181 640438546 424768268 237770645 992834762 252232036 563838378 828927100 713798058 36096554 110364151 292817049 784264355 226339244 253279636 568085262 713329855 70744454 259049366 526327695 588103103 856623399 885396229 59733735 188589715 858790995 584662366 946808179 548389859 509507490 763666706 563060133 641256585 409912574 49842693 659489922 969882133 516726825 185756176 404604453 355740488 719754549 134869375 951592506 750865561 733123850 106042259 29480067 707897011 995065827 775581953 997494103 86215413 835054033 403453553 684704286 499944432 513125175 224975616 258607062 842718189 125123916 239893182 165408145 799391589 119042204 165715249 536419573 726982534 137158535 262642128 554519738 318974133 840590529 102214281 256069423 572632327 552553936 481309244 275224246 150157510 187596177 877423422 470099524 125927154 82537652 325957079 92446690 287612861 987327547 537639108 944628014 739349774 798254079 650074037 710415835 40760063 44512043 997867984 816076332 641247839 185115327 217892397 291988349 233457457 715153422 759677015 723927226 163956011 642836800 191719121 935418086 393105464 558639057 666492303 43842454 282430199 476782864 518249081 980501363 524113209 747245729 728273388 439655100 62459527 774286588 174238008 362396609 545872025 949810155 43053347 331452777 755214304 19917584 623634020 263131565 187861501 542516829 639669801 670604315 691597895 827060889 196498577 144767060 400592970 245015010 619258675 780739726 908712003 888403494 715589526 320488978 778893221 289114536 826620342 527500223 92437910 874279298 662721158 200937093 480123762 948293149 948436584 578461675 465944391 592970682 517523382 56605834 157939288 113768172 442404669 790370960 766427035 317886748 250065597 526397502 904012859 147899140 197279594 563777130 14317590 878014260 366758510 929802494 377205311 190573713 577049957 943030135 587550589 274081489 135780063 855652711 536579275 345782016 760401633 549732595 417211350 430655997 285378404 313261909 738013058 73774845 341737685 92353371 269394533 241618952 871207060 303089126 206155595 473052279 732500853 76683373 840725424 219482492 853698113 876099447 582463561 848023706 599933494 23901476 472973179 642307113 18363779 779079589 892448738 36322260 938373581 411133888 327800012 560250650 979483309 806296909 948663996 854844368 647738928 411697595 977437671 293058205 866039637 692662411 723856570 887212924 161309331 553507796 575303250 137250366 854253136 960122046 701779202 277865221 225797995 669313543 467448529 403950283 834659251 537642113 305653241 482472409 742823533 422934929 320870249 871251536 305774802 989598642 948637508 599221411 233660046 496842992 681408864 85729307 675620419 508223342 670729672 594036050 235547140 422756832 241233211 788916408 897450458 200023570 427717546 834273042 957691970 57133407 471328958 112454645 542898349 803753274 706426959 669366351 255116287 729919913 605527278 51839199 167205137 810043844 673207900 483231416 552217392 279058491 70795793 310189506 251114651 112740302 170167222 325678905 382206216 371520978 956213163 803550252 296592415 238873267 28186498 324984831 375248894 900628588 473137794 820895465 949999027 286424848 415005221 574901367 19812293 541366085 517243034 756156935 271607980 514658500 164638019 43817806 902272340 56119515 810980152 969777363 220030879 956024042 239066051 648317041 46997216 726276329 948024034 929080281 839216224 104368097 108803017 423563534 356312540 522317934 934599005 136487143 805632005 909262148 821211321 240404880 285054719 943752103 898433965 89151753 973041378 76951537 711606586 957940134 201980476 16141328 674104343 204170893 442320526 673022469 164162351 168863291 6905034 194930790 567971873 414840063 670479324 585592540 343008191 325412734 551353118 590678694 965052559 517337389 303340257 661240085 488552781 478550234 569556203 408842254 68973415 614453540 672051956 650361995 665048447 499272446 528731944 560454938 716365293 805040688 555933352 6765148 346558779 970644950 412765192 279257991 436616359 379051743 67471827 908377317 703244964 376059535 611117827 103000147 777280345 293816061 53482377 833443779 353833760 676169622 67792075 671784890 113378568 580400024 146030112 659842514 866523988 927117976 722975574 854553913 633052154 404484349 757088045 991011121 838346533 455246466 216298458 91371406 446668724 167271608 572380037 62351163 162453433 806116737 779157707 392957109 922792698 207555990 159223612 260328078 840908147 296074499 633077726 544708075 739237329 211451814 148925352 739799815 303772153 29585843 258390536 674627502 861412223 181092914 162945886 127490499 137424431 147581823 427820414 444964794 479072904 439969226 733660210 445554462 55409724 374628757 676274102 543110924 375246514 789547577 494990650 152417975 404967300 869394529 96283492 289236450 305579265 454242956 837117643 439713641 625558188 400420239 109932669 247449528 70368699 187584273 90818682 650511698 227577241 168342030 793054262 159292235 531545700 859078997 597434139 881460687 963103087 144704010 242239749 266840729 868779458 858469412 327208132 301416828 71421589 88838896 464045213 610575070 371272153 14698892 529419978 308807736 351897263 98781549 9970677 449118359 128706542 212637914 295200193 237785374 934609569 258719598 817631553 738836866 668754055 287664794 783413119 914395788 626351762 205807648 334350839 292224667 134183784 59070105 978717977 693254687 541502949 419589616 418854602 259603487 452526487 464444389 857564387 10227892 2050369 125526668 575148465 428925324 104890712 772890827 722429555 344940648 296655497 447788255 41371104 286807454 750446641 175478999 68178078 141108887 379444451 485545239 961102796 968585810 427653862 926332631 247939449 808712672 358738612 873494690 511244586 597312230 401966973 601508568 955851864 411738142 592183714 897095724 303705327 562835414 994511674 314928678 673294801 486701679 573511824 467710881 709066577 540645599 708230818 183755598 254120889 525773616 677791652 196570160 289301444 89058559 968536443 101775391 908482340 935478781 771419715 309931077 349849341 685909105 766615754 417533859 27729000 419994549 847717650 979102093 687275249 62292661 615549651 178661930 987343642 56784499 669668342 850766581 55309526 890963589 297805083 910925631 49198094 742102933 238106132 907183274 922927904 353416672 685604968 53828527 535359835 949633976 683941841 88874521 868904836 325079554 746354366 139412872 819861075 924510905 754325714 367680496 677018359 498053481 726303587 511881239 194942862 268917172 26149372 424392730 888798638 760839633 925000411 767188456 875001055 468768520 380159859 575162309 886148895 876090423 621671148 350487241 836782940 997103184 513248414 548619103 408348669 52095705 186143386 789444550 67585370 479176810 92364321 984461971 301001791 825082674 875466282 269784877 827231341 705870195 669629920 588700240 553575705 305687554 258813730 535421067 21007724 250653896 882541314 757560514 455964929 122324803 938675271 862056108 542131817 200713477 265813482 37280086 35547562 846958132 366046620 933510046 935845564 304969225 682360383 862405816 756417035 239011665 839121513 660722861 848083704 116758767 379662564 126064855 62599256 52255320 213217584 555779687 719887603 28369941 998700032 339024607 305507846 242352709 388575161 154925720 423719874 966843672 114180854 285959486 396707274 539557717 952780550 406035022 928937401 126351573 683219564 616673695 990809498 322157829 251167071 409059286 603705966 840430952 792020552 374088432 78562474 998016019 964233798 271546044 689224374 397522992 912295341 932006750 642200431 872873083 282285186 700342222 708422309 640649160 343785729 125699671 672836510 833885563 684297240 487812888 850581393 604519950 954318313 389721222 258588204 251302286 831822924 395848680 730054671 447001631 926282058 139744218 378585423 836201076 780493731 908147403 212846068 670925399 340162889 84863 746056315 319974695 940983267 676743053 195843668 219764309 884304715 995328993 715580005 854393830 636770320 145586491 70394245 124094196 458266101 286020783 959565058 76263981 426613360 662882340 182266652 17522770 718820652 477335765 614493575 89217209 533224071 340196307 367998445 337314764 640862741 533559936 242519658 106317192 90178331 924229397 177678 489501695 442371860 118188829 629268318 991842774 799217712 126405624 452329172 10343624 792322512 279495513 903509850 9636897 964008716 683082184 682304723 470968131 881508141 702677281 827218067 834742309 584665651 564415252 570967521 910556622 448390991 932036003 280407676 984729823 390851434 761964966 731639571 300262919 356515741 289883466 596720588 393309324 210326455 50478222 271953086 566543561 196157115 472272836 898911350 925016234 551647070 974063638 122301558 56911409 698039949 621788159 332716466 302547445 928664037 687799758 109764369 62651294 710818873 40374823 570654194 744208490 48656401 722109057 949383844 212838315 905844773 766065064 130175724 138265415 433040357 455819836 994524803 356591159 349614068 191644465 288398742 625028360 838016168 93144142 698543428 68475485 443952781 859622574 935380516 351701866 534342879 809102145 764175548 517238395 493329427 811623756 208413707 854119275 9423438 852595941 288709632 307006509 99594220 189382520 408082944 614994759 791419899 512671813 637601636 450850898 49353405 708593375 676701688 271773308 452463146 666996654 944531582 725494021 467373163 317453934 29977385 867943877 355646048 602954414 379118114 347409829 607410203 892234834 546998791 964684065 870239587 466130962 417434727 731317965 586290226 26530809 361226823 469487565 265839416 220906470 329465504 645505627 611613269 455877134 411844830 349343300 18569506 991655800 589580642 822070635 363775849 673942143 414648833 439449669 946764713 331513172 474145924 926453852 814298515 235284602 260724518 937148621 782110351 577649992 254098201 535795401 42888248 971542634 62857473 897504279 489106652 911437409 926026615 22951312 183974909 946006014 842171271 148492194 613742802 555702507 196877618 709775567 587921095 285722146 62621165 675257387 880238584 12491891 567026465 437788640 448148922 936358659 717783209 543719341 388153619 308640200 59014486 603162979 903448893 192424462 522241902 360261479 926083111 947080949 293864233 490216244 623580403 239104496 38277427 419123670 622304377 996995911 566825773 784917615 327620547 369403030 735753260 785519797 162931855 137344844 473216825 742240626 539644369 40816429 433572303 632411395 836221486 664755921 287599711 475521498 719656577 758549026 982909647 144349436 661314649 909417186 403473143 960035460 238545017 101629731 594781987 271051294 414733144 474608588 671577236 102345613 319644575 802121499 480861183 820094245 849066669 833274142 994316812 133237329 385824022 99771448 13921752 67725838 295597344 254688675 191526259 185542510 738245956 64147944 876491363 237705239 487654579 275550568 806349344 289678530 455560655 127432407 961777302 115428796 386647725 605976507 436809894 527082856 800928666 677455089 733165732 293984442 146168723 301509417 28018906 493027773 326006475 193376613 482779652 69341711 5769001 697500542 841374163 349491040 417288903 604011167 152596842 420719095 294372980 924039112 953294820 831419180 207595059 153784908 72754380 311213039 136987578 109700691 491252898 738612032 938516212 172253017 552913757 235517108 43163775 144121005 686208740 233769719 488474159 240657907 60633492 39201348 128763273 967580067 584067773 116530415 82567753 327070599 470381349 316051420 935240412 236783425 882117507 176430853 685848295 786482370 700155141 501596663 272899006 66284244 889717707 527114837 924482797 617168786 808659817 887098964 811325619 453105387 739665257 528177982 961398914 98114850 97193415 569083887 326095233 531109200 179118963 742606683 100074250 203610593 154509522 370666246 102017836 594411795 739906110 515730314 327043370 985195898 953136257 699156245 568334329 986062463 381761886 212960232 787324614 53460700 433469448 293619929 682080622 631616801 516509097 996314578 598272261 884617267 530745309 983267407 207062608 350862792 446477108 630750692 107254346 227532011 636499891 544403637 467925667 475156606 62170963 378047996 760314940 829313971 23604865 328823943 12071852 566483603 839133853 18259256 981301182 3419255 399711867 197255043 328373745 762956945 361965797 845239795 275309303 260493924 528879382 536515749 441402678 88952904 669119808 497909707 264453962 88116711 946396423 738229802 819949697 102995139 203234309 901899676 1482589 37905582 104591940 918033295 492984854 913681999 810985159 210967941 738050325 331791780 713434625 231752594 377666938 87131259 611242075 176482017 545629592 721684215 424186035 40206383 381430644 45350929 508756696 596624974 607287113 403994133 388209167 827484836 828396038 821911329 677129617 772907945 286966734 531591593 344776970 663348077 807391351 279289590 40187164 550870031 46414348 171978146 544924634 117341255 327471435 859738141 115566413 205522909 557391912 388927275 595724787 356790831 740530248 380213860 294828347 917127343 857271175 223455411 276845066 639397219 398849139 476182744 286999353 541063012 919754958 835903462 712634388 827147103 239769103 224150469 998961372 944667671 62800866 862770609 528594246 139441377 953792164 813462201 363302139 669302310 452790759 607425089 557475862 665565156 769075444 699580544 899539881 822980142 394874692 584132355 828681784 897459624 191948550 61533992 921248827 332985867 348577181 499436708 811759265 688092327 4271647 657631230 244908872 722639068 806585815 517823761 122232198 418887328 617143491 737059214 802017955 585929980 511249430 50580856 721698396 291880591 964553399 420528550 332371298 463789065 584772033 63019588 598393305 758132913 144672001 811962706 663362009 43546848 183197051 456539427 188217841 563012228 96309734 57687776 856605599 976167326 221280043 258867971 233489369 905258180 404646122 41403356 260593543 331959200 353484276 649893392 591936006 868360046 796750546 757278996 989912486 400300930 329168957 761281974 550011949 410546624 85628324 117240469 697128275 528990498 258524073 525299876 292603716 878493238 603906212 470392747 560054561 391194013 368869662 244952774 688202623 657644174 843095639 494240484 753658086 886591824 694214338 398590281 990667347 192728515 557074564 643149324 75642294 233134040 992648696 544246426 702242933 268527636 681468973 391593009 752095719 778972178 75033446 386395750 221554650 991186686 813574553 544107936 983792910 421829146 150826225 305181594 201555896 707816252 599361613 130910693 571070976 654654798 231676350 206207075 82986627 355890893 675181325 219227085 673794257 447529035 825336370 956300334 721677296 544074478 806921694 508833126 143477975 898181358 313613810 909631401 339652340 205173275 412600838 325041661 581374119 715864660 683822563 563914943 677078981 35481105 713481737 653464095 371302421 990709466 90304042 532895391 469574102 29409741 382402477 681894808 470128184 335540252 808798252 915250612 6791646 525864333 766587382 780113781 928665442 84333304 244354702 308756397 946511313 462108877 734121258 825003524 884968747 840661387 454909236 332321142 247717604 617345098 205670093 722829010 401075302 891866930 555362117 473579324 789767053 592076802 958463396 623266987 600737577 277965450 158152997 138209900 185644927 112057136 923789749 208572829 470789321 560084335 418250872 517710771 858008497 74165844 525237829 198407412 878582234 263333120 216368677 748642558 424470103 921507624 462167000 891510078 779159090 92250008 375539279 757139834 654243047 303798955 905011251 851601480 47108838 981086421 888066653 820892564 871772180 728445210 808780380 113372958 85132362 985189780 449903858 365025530 374364629 993569264 326775959 269356046 116975604 420421617 582589429 790869655 903361374 817326060 429169258 405856932 859729593 10105675 46846601 576274073 258635044 972396299 207395993 857378734 105608366 722447421 466113300 912251502 605085404 687413384 587301161 908003641 608718119 283865253 229251899 75710146 330185084 945059554 935888737 933702289 203437242 994554272 723343844 261682561 977414455 974292949 317748163 550334019 858444604 297521547 396002098 105818074 771469188 681271391 258420246 849733661 687025601 452915715 296810635 534958137 117867799 779488956 307988318 974986540 702046367 571564004 179726996 285365835 683220966 586355817 980746721 491201469 188607851 563509580 311981874 730328829 850093348 21679140 457623332 367829852 988620026 93049753 519653770 262697084 52333896 676746729 754356715 11033302 87052640 48485221 136365569 479691317 107236870 28191477 556829243 249245241 746788339 133587600 639309883 377266901 724697171 770779589 89681241 592318162 3950407 126652982 588103967 682371146 737244260 73053207 42750924 64797997 692303154 821201587 472318161 614731711 879530415 161124071 249302870 838820120 809484489 397274021 746034870 995899811 139893991 47486579 189059838 192845727 443995745 675450346 629674866 606434209 932295683 406725687 434241801 910534928 50101135 829317532 155392748 373580456 294130232 790408432 679586043 396816120 884015399 144078875 225185352 420492516 739038201 459926172 916518297 705901091 82401599 684466691 497284074 65551809 114557180 354937974 798614249 467238047 662087979 431651120 106196345 6181870 775556151 205666558 733533231 839380920 34379649 999340224 844834776 597350743 304294366 594132974 527673329 733570556 159230998 967851280 518863661 553169193 276336486 929435205 831912947 601812279 76372479 856238525 385505502 384310737 831960453 689378367 690762555 844732023 768713616 101488548 682791822 767375101 839725614 132176730 158517773 464845833 356057183 865417442 762330403 194804120 695022744 306527313 953350639 403745145 938084673 627596499 934270146 794722256 826553655 569263908 325938085 2938261 641175626 368990229 724049105 800090899 347326400 610609933 725474612 314905193 109342416 853278853 541772019 381198348 745638184 151318155 714785250 496504643 527776104 685525824 756913166 67464874 56882597 222575450 120187956 715703984 486449639 789223587 637808711 535581208 424591019 944957048 556903918 34586236 757210977 993428554 333909763 69174981 30265071 85816352 955307541 865917364 814582316 74276628 33041639 431491165 18380390 483732433 302623471 100732583 155890653 39261980 888969175 95923661 524505157 563049032 137109504 662737631 101821768 170020800 428159738 23607106 456395522 850270593 967424526 719538476 649148547 863906204 881919668 75117609 107659857 339041465 299444509 306495385 913895139 569824911 320614570 803793711 907135783 303318125 229949554 517280627 181398268 340102581 632108992 919302721 580547001 924598875 774474899 117589832 405264037 135067498 47291933 53246605 364459388 385541503 794470725 526978277 731758320 631696716 666395429 574318718 882966310 88407062 251491212 370834774 726822965 994207800 655214972 662689730 713623723 631965598 261836205 181432553 571338247 124731467 467029257 262479175 541470528 88697555 191591726 218635563 528796988 202648801 101609711 109940536 962568026 553689523 738822867 140180712 892883945 700228761 554921877 985279748 679506606 770392953 82578082 707515949 452159330 744289102 70500510 44691287 993389618 987526308 353982431 770227785 184921661 383924254 494956272 246738974 606764570 482275057 393980688 994055110 824940111 480380262 512164016 744728710 673375707 814929756 575158777 259735668 269947565 777882307 619637060 524660476 279420458 706258466 234607519 543595357 250032555 884783377 147688271 922060077 912863484 178512576 742022728 61283537 712582879 708157551 483749559 70713350 769853319 425346548 154933113 973070427 470192926 671685176 587049121 33207732 201385535 937071546 438554614 843062473 12897916 349444362 990663026 495472548 292088025 802665295 464610244 487627303 764799567 688181442 659944655 969536132 815526474 642036529 579481641 53445571 914517292 762211453 72786333 737123391 591931592 456967964 292287913 995126313 360470759 156080791 571648513 619017220 775663046 979878413 372814346 25743655 610866838 561530031 510972768 518652478 993489403 562330690 895710800 280233418 217673358 733865376 22462046 304572060 419569499 518414135 768266945 944608350 869763171 390995848 179422434 474013194 8319771 853730217 971434721 541222512 858303724 271040964 344104976 490359477 594126257 955840918 401837430 102223567 503867964 20637936 724501069 806192138 233966801 364040762 512803459 536253317 235128232 903288555 882621757 141976246 714291055 8686098 970538320 432853986 742915527 795285712 993262535 919142566 647044546 539624156 535874144 327961713 168246892 646579454 513324558 471208711 60234047 520188308 843852152 256728831 311543468 559573264 276714361 873573446 793090713 299459703 844122526 740573339 456146654 99770339 628816555 95461904 557277127 980410627 189422358 140489103 394452629 405844886 777623434 909109075 264911357 610559987 260956518 38402923 770417319 967974277 702874940 798379578 7624112 540664135 202295122 623801082 837739816 877609548 887658532 486299188 777321621 173238841 10701536 714891849 560075631 653122505 541928424 543348205 860628386 969345864 906523476 538257062 777167375 980214553 959320429 742687569 646362890 763370545 58799923 447298206 909496029 85292697 898767577 943854991 276070468 457306607 720784963 964990461 266115824 93903845 152050063 408478995 574467588 368445633 238618505 858807249 884417691 703806428 593093173 117510026 748567616 35020835 947062089 310628966 736907124 952292505 639063216 733730785 664750123 455454419 652638472 911205706 653463631 860468602 889124389 485315653 237113916 288515789 203205516 253045577 98441026 808268060 972097272 684110371 31693863 147665230 932555993 832603762 407498146 958879068 990180560 415879720 788856033 827807956 517350453 479467023 428587012 472769367 382375057 211173954 196253855 904131866 646616612 38471855 513650748 257245545 520962656 874240924 385082583 904355616 832901740 154562079 19972448 273138480 918906274 534788773 830590013 148146976 484519953 621482860 376800197 745918857 161453307 361235720 54884549 439356057 729774424 424640226 631549183 849705105 514855506 351839668 880163239 51355719 934233543 484855822 287453156 963195813 371564234 56660181 36566357 333613608 484787746 744333758 505128073 558901089 279337674 278237655 368705925 758221176 336855663 49023999 576055363 357399972 556344309 703090025 786737453 380790964 650813427 608166429 911279014 313579913 642233138 233782135 624238209 582649241 179709233 202902182 103510664 764973934 969109156 705546030 457145078 162745125 308321265 352877415 964274173 752974576 606938546 288396027 845676866 627508628 904558389 582600044 708319324 566516972 934627071 382502028 629252952 440680036 841085253 743064834 99570488 32742270 211975793 970971852 534313071 642038865 5889443 63721400 159868262 479478789 993108269 611988457 691024123 995688792 699455254 450109016 517217533 533694748 694371224 630412625 305046705 382606518 105594275 554883314 164125008 465977505 156648792 287375791 257822854 870215401 687789198 514485457 291436277 999583153 331323216 895913714 758928048 96251309 419259484 100337282 313900480 104936104 427253158 402968645 288241315 259863552 334347987 833024979 513906888 59367205 720305087 235866647 419400468 917645854 986737399 560701905 53238880 593343491 897629247 953798676 46100472 131218308 810070798 297825992 284602909 669057376 791309 633460521 955527812 833555695 409420956 474142790 955152598 177189017 198533965 396825475 132796206 100150365 720705127 455151383 682726558 617466955 275184996 91545231 542731690 270264586 978505331 73548105 63811275 980438099 893148407 720859898 462223085 439554419 491500038 788864041 766834161 81079245 977393898 750736049 368301868 59593046 328916388 804725827 870650342 409792792 59222884 946227938 295499228 499438511 131454738 894129509 297484735 763469263 23629769 155848184 215670707 127298236 928048982 576087195 598686673 742979280 202709693 5973409 556031653 245284344 139663028 248543795 65456560 249265719 130776615 563713739 970796007 380197922 397189810 134818745 607640626 66255715 778268970 779022241 868126190 994244407 926512148 90167803 303112556 881177328 1067052 267661202 27438703 490138739 472198880 883204870 65088690 990787770 276864723 611833162 985010784 149993043 835244634 677853734 579942042 92918751 478776322 632258742 478362613 587127444 240698632 886210025 614286585 54501052 876551135 885949699 545400995 823877684 91452590 143858715 415756003 329971950 619919823 616543902 196391199 130717039 885347922 1649610 734657711 847067985 724232824 534431028 123075422 141681090 490627640 861036866 375665135 25219588 648108989 178348466 740550294 11749355 436657125 929247761 236644731 689591394 713718980 770496581 413961019 895838182 578858015 886192900 516328806 370015497 97289714 657628250 527488258 96574704 333499627 438017063 739674886 758137302 923371244 531840671 905135328 492512135 158235020 481722568 507412720 271175653 348614295 80051967 738491147 599713127 603299978 528207220 459838713 637828501 58639640 3987113 913660150 240493453 972631975 499519478 991344693 686428289 505445331 161197064 841588568 412993079 622115819 329258846 167195898 253890952 166721391 486018763 985589797 533930721 160509336 1330679 862919388 325653701 130417104 984239070 402418835 540023368 603469365 861529935 835127473 599643541 285311515 858385262 378881301 722178666 298157703 148431410 581724814 783303831 509535924 693416168 533398370 21343875 384774802 804893870 40211912 136407975 40776514 456969465 554272366 489019664 353065883 594715151 399898867 299946465 552660648 536781198 94436462 730194383 610777640 507417827 915567589 529082275 705583373 851730900 733491927 307979708 478124030 980046071 867347891 707336330 318044628 360401464 711823454 432397588 849713696 482393431 617878705 455549299 285604772 285285991 159308025 347652949 638511318 623640657 97145974 457246331 545665632 464515407 240140252 519802683 961874850 163523441 803761108 785506558 892216623 411686683 420514684 648671939 166784331 25757061 698260707 62515611 776340596 167827770 166477198 89802539 931464150 19805849 734909686 918103085 459440085 939776087 231990536 89336558 465818247 467872252 454902947 357635538 564600375 374910561 342576157 770714060 667940836 942130744 786969023 439557862 158334911 145588868 109752388 618369727 370588593 446774044 801857886 488495368 961293778 227781933 663800881 957115910 184795379 711176629 368152534 698576660 624361237 301379081 636379610 57298717 153730544 467463247 50959036 912698150 201418093 259528197 142926962 645825218 402520108 241094776 75272421 628828828 715680255 438604110 946526832 774341873 408084589 469013245 929669221 271247891 520086320 475716433 193475976 652592871 577281719 84362218 670470802 632321384 705371301 585219259 38409903 892388642 179523664 434776717 21434880 197885367 819388739 227411322 114443290 424031582 232666044 917899122 690983046 434179423 477649711 908787385 898946367 637845144 810454209 360783463 350947639 50122235 809572813 182813927 433869522 465864973 714112099 195457656 287542376 691574377 969981380 909389743 600093384 211790907 324047079 427448307 512328112 335677126 159011064 954318336 368833622 354359006 736936915 110887525 152577506 745508975 453772941 216740358 931329521 373591796 6029292 711464602 377889556 358589952 19958506 144764717 84924751 332442041 878511414 612574880 671645338 39384408 529501618 107489316 969308003 272945066 843880182 878962115 679436042 672823698 777612236 415492823 460225636 520639621 491280818 74052241 439423033 448102668 12522331 938266227 246918598 654492485 240409902 634251990 199379260 97207139 845348293 581602149 952160831 395136042 348434544 935328672 793458791 840403827 401647024 842151771 48427970 786940078 11377084 681643836 894642000 908766555 866761471 489778496 845339526 390132112 402164887 901862198 789303500 897920118 885307096 605730626 432683519 992816844 783131079 495570524 796692720 449161571 426049440 653079759 999659234 895097248 216448337 562594490 765879056 839358973 292620028 176842386 119679781 257959559 553170041 223845790 712699329 528064353 74821585 758666362 253283067 124414272 187322308 955492245 344077018 678294510 939383876 545452466 564342747 63822536 300023032 311863915 492818798 197466432 269786042 988224169 845635193 1091931 836586778 953178413 690500563 686461491 204461784 836117771 983167690 441725046 834375789 941751338 525240734 523886309 625355139 369225669 386465283 711912662 829117560 526780140 432582563 25513139 713039584 223688964 2860186 407198329 241253376 374454851 601815544 970738746 789074260 840354869 783791683 761409691 848203017 827741242 706560498 667128151 132781699 775916037 472713203 143827386 251909849 406267934 969260070 589697830 154739028 848214113 823973855 79344017 135127540 894173309 505239656 429748229 461762027 163860598 359379836 471327 838885919 392037156 548484046 956282769 276663724 102017714 439178112 794829473 854527072 145045279 318281388 636908711 523746622 658949824 934036959 119867795 403629820 260796092 250003096 759288164 195446916 685104527 668261838 414658226 121597815 398257544 212984935 306784037 639195813 743271754 226332610 936349179 23986326 784417359 79039534 400165510 188615684 439535456 159826800 424521388 65072223 883268894 522762562 270344037 280953416 786241149 294381518 462217537 962511382 302097219 919731767 506571488 529170516 681902734 253592848 127230327 399292480 5678923 925781218 352801106 713735758 299861696 447882411 640288844 395561124 19939074 943606362 339882072 775069083 443508608 382782292 780584444 629517380 667059062 831811314 331531473 138952416 165461627 982391041 916249604 69962599 723574004 231360064 571508952 933436931 855242398 317272293 736637218 146266002 501276936 437639961 261292491 618737703 978633238 374690167 32332114 331708296 295189120 253619601 315045448 267802546 457854544 695506539 479581137 791101265 43264360 487199998 983854121 664094793 344557562 957063862 286680349 814997552 141911310 826221045 480519310 766432465 91714303 478515342 407721202 708846250 866111998 175099978 793424851 519403886 319265422 781534054 661208653 73035397 302069254 919060755 145240980 470330247 86146834 366714357 741250924 154227397 12471346 575000741 474511535 873315264 829284410 656251951 708612043 78286256 254321873 158498965 396501825 613584894 564580594 489512266 674560551 140240074 664530797 280682935 330148519 983089510 31745895 850319801 5370494 395124952 337149654 819964961 720550270 391680604 259269382 588266803 857430540 113243616 31477526 776550183 484031906 344939655 385643132 753240748 539255118 230980391 874844029 227298144 34249266 161329354 134806966 224396889 20722178 116065585 72999574 178097823 261626761 201442636 299560417 607726511 865911076 736254403 818962478 339172858 763455301 411363696 388042602 60233571 989699313 460203491 872933716 284220357 791220803 257189853 364023806 663550827 169197287 32990165 157421138 426203542 961206431 563786358 317041291 210216187 157015490 582030623 796232888 345666114 84091320 825073249 609552188 939849352 989680511 864723589 642614608 964372446 455443497 347316228 745426816 303582663 234259292 939288076 873963562 345400766 907983824 894881026 46831106 585940910 203067861 782545659 242603153 645632120 357114826 257781825 315769521 990700145 282676903 583636 861930771 405183457 200843380 790690790 560692921 788217732 386889424 627254366 716663164 835026701 324554091 631413078 48795783 430249887 281887883 558093725 545140442 863720018 753932171 677382454 561056200 976070836 251224920 980377559 139582329 922942277 295189235 828462443 941586281 842238457 518892017 98627217 556489447 705818810 778368766 686961946 914481559 534720484 757166677 24877198 447889392 500183751 224809034 892031656 382366655 300060201 534651328 822985686 799525026 189174465 11301043 854840762 911352974 381409213 586762416 252094891 682925130 98568509 841918808 544411445 307194354 588386005 788534497 843302549 419189620 319585295 981505172 675039038 632405270 703205607 774024528 53215318 733428718 814598733 25195526 905392441 705045609 986173095 641102395 275444213 521859269 243007052 584422025 526483917 629275030 959198218 200532253 928900023 545656389 951511456 447316539 258527966 439051148 780131909 525073590 195728160 503619579 398055711 740685432 60513168 872111222 513730509 81268992 742220021 554617525 651354846 714739167 872611914 112126915 702426712 952262970 242037564 872031872 513931314 794354251 137393327 664140319 108278489 293345248 270071609 390036136 245956015 46226651 942523813 462380407 380243847 322735792 666174834 922015163 703541035 956359658 613463890 754888440 95149526 721182886 96489899 530438022 120065979 910110997 625340185 538070799 373337212 536796159 646153450 279400725 2522035 779610939 161170336 418232681 395613036 486761528 837584243 830935733 441632937 447067768 494411981 778652404 709440989 135311887 322101452 300727796 421060466 771820072 545339843 811687899 173156931 376195456 585741753 300750751 192132130 415955177 819348200 763905421 81468499 661977033 362969663 936671683 771222543 459088024 261958113 678336693 587633411 334873446 574873508 661929900 24860110 849230930 865950611 590752066 809544838 270993940 225219181 890398183 405096756 502237812 564786211 910891615 323544659 432189136 558459998 414489666 174126421 593297050 398981366 749722235 147532062 899861976 20641404 868648906 701334663 938815907 192241329 239367490 603877084 515514024 290528525 577932491 79705182 986563498 730932537 484499361 185682115 96763901 882731413 981641427 805671857 362742285 58495411 693788613 95298886 491035605 814327001 348018350 974818451 618878313 335492228 426944795 182754332 76183404 930143456 206461546 785716314 15114650 239291216 72127056 636318265 190790464 226956524 141585236 783832986 903583167 204070142 485006161 273989586 142303501 484946820 914298360 514553385 912077363 422419890 137467723 508229724 132910032 182678637 668710436 457437980 449524884 828159184 434864300 448880781 673880006 298029227 236732132 37020872 725063615 198280447 966515999 648638041 529411181 455203459 106372230 648549569 946206161 781657634 662297491 33454837 434987649 422796667 913730198 467743197 855995942 812975456 115935795 507186390 563507199 538138711 598051298 585574961 40811869 71238940 909895790 865354162 976036389 304509725 349203575 620107537 291354449 738894076 709833968 235851900 722543983 647588625 608066977 490992403 831422240 587125734 117759398 439847275 729436570 203367097 210030062 406233100 295983911 792803325 862088125 103848435 382380964 530323929 899833130 117724945 916429059 824480423 66345378 585339081 728229321 66434422 553212515 44703862 551637393 978923145 459124994 613479395 385019783 897653718 976859109 654592465 512380653 651860360 205920970 930828404 281194393 828217470 918619454 283047414 77400181 297106633 514650919 605882611 839676926 250284082 748768059 466640636 397390022 506676914 454477702 231590164 668319219 947072759 868520424 303841334 417993661 844850405 284354197 872174028 726959091 63150099 89088659 509440569 240533623 304475210 823401023 261127505 937082301 394363402 455933384 479253212 853193552 324601605 504836531 129016598 409539662 23471778 43811669 719589682 425694695 486275707 657887580 927731154 528065505 522107615 822204999 385586065 513264407 805731153 607030505 580928377 389142005 275957511 770813674 888769933 403608830 717977964 798508870 902462785 573239623 432812190 478762700 816000508 57241337 363627504 602223264 421268381 766941138 377175145 676297401 897227507 919180709 967947588 246056036 540148292 352303829 964732014 225455807 62280135 428059358 658907404 997680447 418630698 26206413 424270322 567141418 9932044 782685122 433722924 768619294 328364420 811562869 263399289 515072392 660572312 833386159 443455179 498468142 159886791 415314892 13975752 123164326 528525696 89604416 969534540 525948892 818342312 266465295 627803365 24178832 866564633 538461266 509147990 223987413 541048605 550577081 583569428 587493780 694858743 891227652 787453900 259742983 719607130 301978505 903676379 499303742 488576496 217263538 734240980 582320285 639188 424769403 902698238 666270812 376062488 482942968 684074707 705187078 96595264 990685901 782653315 500920570 156006341 573064884 44262255 263398637 56617364 201044475 418974382 75487334 746292620 157735683 254893963 949866049 913395716 569043138 195057924 581555501 944806722 112653122 74678093 52397102 144731141 853626912 752930891 863611675 894346747 542734605 595949082 304376097 149899340 366585425 31916936 71245630 399151118 60398915 469051031 242191559 740224206 856602834 379993855 31534050 278209293 532631551 667174057 282102797 743921344 18830944 680076853 749364373 509988304 121986719 346892149 312877344 27736728 241377529 116519408 270581796 551068266 119192000 217707872 544447341 876041738 641799642 28760628 940915355 524573745 236121407 680885263 647531937 248055307 880857982 523487303 920414024 678082490 907129913 49953895 899485610 676997841 765951908 923463341 101178551 482692313 926739722 318641804 476760755 777445327 312247624 750001964 875041974 680424100 598376272 972121061 308251946 4803004 187172520 653489864 640436817 853218160 369318376 713757462 870650557 956135052 284616000 808450502 992883670 495608529 526081775 711702019 902279256 575746420 681109453 586458028 888747730 19995549 524991938 632249811 166488615 452056297 685680716 88510782 683902481 678726633 157013246 243554025 474562457 657412257 65711611 383582850 798845856 950903561 226495103 78666476 105239386 545455503 255741782 139516605 542512846 536019860 579800419 231053503 267707735 324687850 481453595 785548402 784571430 160064860 225854471 728763017 950926013 337738535 236117830 521728873 793312629 868274041 645520904 19277741 663646201 644173817 439749908 550132388 953641417 831531070 762751043 432727249 75635384 970676822 913188610 920557675 109182319 758466369 563565780 154606555 677621224 909976436 899261902 907966016 674510835 283426647 961458458 6208494 967619508 17500103 398550900 113050858 130125347 382928021 807561648 177065840 436586890 538541828 295669554 512947310 947641867 939750991 683680884 650814470 853257240 175417889 669037956 9313808 33900793 589868315 713682051 960179349 773416778 754550097 223028263 955359829 272037753 523022029 382304313 891990338 888842828 338516491 402660888 916209923 927014234 906342011 754510645 85834610 795598733 596313859 465099157 192379678 270108070 788335738 368251986 267488714 21968057 640347182 599577114 975408364 787944620 547912287 761984430 559674415 3287229 312983746 618899557 758814705 132892153 568645374 948711078 433805766 728861638 991100722 914008689 777904371 563973210 533438061 314281943 848938227 483383105 673937205 445153662 678592502 544596955 797129217 411123486 259698013 414677979 233153471 911892998 864563776 93508553 603724879 237216663 192426472 41948033 221632261 523527624 953129557 531159730 780525867 716135329 101175480 731032416 986132093 398334400 711664122 728884323 968408491 919762135 723433268 908571110 252256474 959858219 513608757 408185832 338978851 339428375 89182720 116294334 48591379 475236999 102903626 246820239 597266986 89376638 477331200 733402327 373458268 650956688 416006847 9637093 217937043 112958568 839764826 263051868 758570794 461755715 528139608 168020150 700742003 544558452 189529972 490269372 284910899 279325406 870931739 389809423 469612065 190356605 34441457 662223011 821273194 572041949 495264588 134236990 38692656 745834657 581578424 970441214 122402054 683455230 684028529 763884496 259247222 903281725 320018156 911038457 514725499 340709436 500922958 87351953 383713543 785477358 684406003 418696451 18111870 897783510 757759977 580995215 103729465 747962768 298526066 936764617 246576133 418742857 114435462 975969815 188105889 471456834 552685134 917313078 474813763 899970384 19437738 958494901 619984916 996344927 770940588 629078904 481611183 547661291 435522075 213082422 799796134 852499589 242010353 673128956 277725437 111569748 163862494 466886057 38342317 216265361 190645442 524371568 868889634 918300170 694471478 720613209 893070782 244235168 202805508 14866111 463148372 826289609 322658475 891494611 927700141 744959502 162455004 647415320 693789191 90181006 465342975 502984165 685367440 802508153 331431087 134744806 210103023 746866583 624151098 828678043 386175420 484674239 34509346 485414616 756235779 495569760 355127198 239604803 217632710 994287611 204542489 966996186 861055096 959011238 949299122 581994 755092866 513300107 721002939 303810841 193017025 986490983 271913275 136136156 369521926 368976139 572014444 8609537 318498453 414107871 493197885 269131687 777367463 767951194 14294736 936129857 90536680 813674891 920742909 608163352 140629497 86611091 766768846 691562438 994251247 55348776 761871105 457175483 94839250 341100308 251100553 974950331 189002527 545412532 259297550 145315421 754545735 304767610 816991848 900368270 103863598 110072940 566553383 459685132 593422764 861093282 713594382 574607084 259831823 20947915 488909204 452504085 913846167 909275817 724413538 872668867 984675065 282229904 812112343 597780740 898301661 231540459 550017159 978602302 915265632 517038264 29505207 545932455 75852179 158485767 541999331 585919948 61482490 726589822 916578873 346897163 543713037 727460056 950839068 416505112 770626234 846622561 409196961 321773948 890487265 530022268 879532565 124587793 580054231 931229213 822353269 913041031 864904164 880833360 496122356 630661859 564834245 991232688 322809721 179037179 920114218 401253360 571359774 885645563 292259897 138009942 447487154 282956002 999464201 241162811 743374648 114057478 273830440 11694476 37716326 896067980 334067222 195583564 716293927 635038705 10587848 791838224 963356441 3648900 184812581 24857985 107726096 701095913 350076044 424787678 478093457 245181847 281673549 17166455 849554264 184304219 173643051 245618995 391905746 433698771 340680928 589297419 413750692 514312180 672040857 826563468 154531874 271886213 475572598 503789145 586280152 595459234 641658380 937194407 680357893 810136889 380143330 174770368 350634267 366432144 149452279 64467584 902230337 931406525 646063162 786730459 327791569 332374828 365912593 319408725 816209626 583407902 879449043 428298888 992482719 881733924 702275662 920962210 249410325 675731624 388629825 11960036 519876713 881941604 640987619 77769252 446805880 44244712 627033947 508382796 328037206 201411864 671903557 113363673 296334536 326547628 985545267 32194908 856602825 518778031 228807210 412770300 401507593 937832961 122507041 372652531 779595369 330801621 755819398 846736397 689457536 85204531 1478328 663309612 495040281 196561527 171575181 221455046 63732403 691970000 206368462 325870437 452941568 865131458 708601271 945450278 414085222 457669797 352734328 899483195 426124161 182762019 266499766 633469801 259005343 764180926 508654090 930709131 278573378 520434503 907175553 542313229 853616802 196897640 261080346 602321521 339684392 609115676 213735499 541872333 739204340 416315697 840910973 370797899 447645529 508785869 397368459 35717801 798963035 984835046 921324103 199930807 384403768 436776136 450831093 854815195 396442588 653911443 442631630 723416976 46846827 200181435 829427327 120488674 840532411 507263878 96273319 124807668 665697495 961785490 932767580 493711226 453972349 579479116 126449063 296369983 766836129 886938489 109554947 745081505 167773416 803368369 599292642 586773776 26878766 538784223 190830632 10732690 702781184 113019075 646566830 989602370 948810275 769966960 441744576 338921164 83909643 106667470 971475872 773190387 325111909 677222169 151797761 897059340 518771085 271685216 533289868 270881408 676011288 238594823 994362462 115834446 466951244 612984645 420948872 36529542 260898979 659813543 919285134 236581071 690027596 464471179 788926697 110213090 968650410 71539878 236316293 327047692 455380691 168810879 144188483 57870512 289894930 392787697 388330872 71437763 816451173 698251949 903680876 984194126 95186687 360814773 905502685 615886064 416371399 120532962 633467769 176734810 265112792 820560480 464793191 400449488 338722047 798847533 650954431 954198958 197017664 733086109 509766925 356682721 728615250 670357977 895112402 495269994 828213534 953646939 372282115 290411487 174272324 11366003 861865096 293857258 568244885 278284741 200706750 825142216 220978074 973999817 624644598 525698762 661966092 454969418 371986420 307236567 72969818 366677736 731522672 536548073 808660006 60712342 380058520 793992587 427889352 1484316 719372940 176444258 169092297 831875478 379001825 186491809 309561705 654971635 146695711 375302291 79528731 751983478 238735939 318942741 339653636 724513081 290221630 630714904 844463231 101579173 588133235 496295716 442011547 483891708 642259773 999291088 554676123 667482063 169156455 180124747 3253877 213676424 807303858 184445142 928456276 224105698 425226578 584179784 19125271 574979435 198547825 433353097 464888271 14144265 513641387 779569943 10953540 351786098 330150289 168615300 168247921 396749234 989455398 545549301 275742724 88963241 967587429 566011045 384310751 811115915 863135673 133474144 357022618 905667422 600546946 771562504 164272382 326916735 633736343 851528980 123399819 199278877 768824767 688502284 538304499 81988541 236127799 565136910 438065821 860358068 426391855 188536396 686923299 746424240 707374413 68585100 945674452 99096112 681554216 666565542 203555379 17002503 201385422 654483466 490764662 7831261 557259582 808319543 707076103 488707502 128313071 692518725 260861959 73075529 909403720 872400732 291434694 862970577 593455397 165771323 69286732 594423872 785326169 171803058 375765204 278690015 934732326 973581352 134488395 892052432 75656902 850926358 280923093 546059908 831204070 193602953 550930761 311392581 124304934 710936228 169923760 414290350 238110618 842404892 278396873 964545837 50953292 904103610 351354760 992168328 191604663 317249245 707665043 254683989 944382541 930906357 386180548 651105408 66143731 535718409 649274538 716565705 481185408 60632114 265752583 998164547 716072001 256195870 675296851 467954135 586812536 858692238 199972408 758461887 569469912 157454039 104654100 639373323 942671115 200552805 220774778 973679391 548387116 702438196 576344497 603657779 933890125 483493205 579450931 153620434 121264627 986335087 489066031 355544667 283522453 921948219 684980232 300038275 851561248 750402567 185320917 504530897 930408310 527415604 302537695 389342497 768591082 773699257 450446629 660891938 506430405 793633437 789120987 853205720 571761349 845278848 588495334 356891162 755602841 265893395 446440802 240522773 33381222 485305243 638495004 315946951 792725317 766654066 616768793 502722181 508802242 6011270 485926157 187953781 890226270 437006809 73091813 637271829 463187471 361480447 872519998 525866930 309212603 165200803 639028715 468522482 692586432 472071682 478046834 202819147 33561967 384035950 201768592 307643529 433036172 614677964 961483441 520602700 738687184 640779798 285189240 220199303 393597543 673711835 213556029 824326915 259355251 559285178 925805194 683790553 966411911 760542954 394117278 384804092 524820524 622952885 106688746 43115949 228458847 309942521 388686998 485484549 581493009 270180262 462774525 139950702 7413670 681285442 83770924 670425898 96529783 400708712 700710759 582636747 891394896 263992132 825927077 788237497 867054322 966505497 865771023 608959408 12415378 138174395 67685509 356093503 790150232 247542805 158692889 695468361 420949729 988355749 190489489 873080968 55174590 154371835 723012073 814397189 572907763 20857150 236897487 720217505 451603577 826468006 504660774 88086416 391207100 44885507 440053635 998626009 847416605 17637429 258217139 12043479 991462001 310641329 566820915 662409403 946364800 767388675 877508790 13113863 819023751 412451398 698630819 585416980 440001206 991152558 48404117 796194701 55187123 520279806 100061145 624716018 395233046 262576658 783558899 142649110 930106347 142181975 257194521 621840034 392526387 383738702 679677366 432745360 978948706 659698445 858048233 515206576 456480994 575695037 212683267 448331558 287656591 80648989 924627213 439385834 352032570 956004605 644125248 77883206 111915046 531228100 265667722 486294620 169621134 216716779 765340176 791051934 82977821 127145344 340006566 682184532 600513396 822662820 578130521 522041113 91643559 195209229 718338022 455090270 85671872 214779269 27631936 14831078 714840891 366987369 425212942 259311432 911520905 172609578 915634218 974612337 42017933 813034192 224906275 234734367 373624866 950873458 72374204 916655975 750731922 140825279 978745451 655902767 260342304 35107192 143753690 549891765 676992640 692194547 776281194 412281862 93795162 689566618 263920555 274886536 410687178 648315242 59158757 403279729 503733731 403337333 486291859 748591437 243599143 546353504 993586147 170811004 566989584 214686181 693073719 973540017 795760779 487799634 872459430 446602868 373267320 859930377 518325627 638456737 702497067 926409982 634603957 101215719 665917678 590671932 724719750 461150538 790328957 712273248 565727445 388617890 227352712 467362076 13134268 909952538 74386740 470966454 13359370 275785649 572084379 476231302 664561089 694483388 395984199 309750907 10696857 443531106 602871483 278437015 377037948 396334879 616913898 18377070 652526344 266899265 560098238 808303276 373766416 102543470 721190290 254766988 250695963 257938460 135270840 40224097 714591204 750203160 952921589 68769297 575981272 223802880 97718272 900632724 725208731 469336521 203963398 339495802 774865795 32706105 117714729 666934626 268059675 982452845 724570108 662935428 826649506 603167061 282727689 310668328 847952009 302723123 706953547 182507821 481345273 570382112 818558644 47844995 201322315 63698823 639614632 52895409 841137293 723013800 290653824 676360528 81658628 597749270 186327561 585105805 549075108 440058938 894642690 559390891 953608090 88613070 365631650 163243647 494367427 560355682 470851599 231792114 411608626 675117018 206207207 600385411 212195246 701384429 281497787 745993666 878293297 486163624 929375887 284358614 510481770 597883114 515191644 783227384 281014844 187567078 203497103 167402486 742547261 377247395 687964295 500469169 439482936 924435327 754709786 661837727 999621035 693205160 393222672 36775242 715243850 465623714 778136999 564744142 157913722 169556164 835577614 168528479 935899351 860324282 820586218 451587777 224785070 423773188 633817555 598591438 953762179 182500982 633089752 655771124 709602445 774835894 761520631 623178676 1588021 364710850 648636070 67065380 965775259 227793511 612527693 582498158 948390673 879015882 33903817 859254095 341645981 181709283 245395179 887795097 253103995 691035133 863050999 518258865 863170969 965976888 591854886 316158481 774830618 19783431 50566180 14728903 732288468 123485619 633691538 947239413 970206162 439925461 188081285 285650767 622104018 825528800 95956485 783942048 18951879 651489941 506949519 224530245 727697240 949193100 26691988 131750064 481953376 334055602 803314680 525459174 515135340 478664133 213618323 576285698 998025024 509601498 102414259 184997808 920782930 42328280 149620889 976314290 886681933 397135355 405930487 654710367 96249232 934063185 747267704 40656671 811491245 350842944 782737720 409388784 7589866 448940798 962536520 196051684 11586243 487326488 631621932 831917729 410388326 842922220 856975196 960099039 855774773 315896110 26507462 400355310 326184264 814201191 539885130 785759789 862568168 426711665 223782973 528030868 665390613 947174652 903322343 16673067 979726081 300341773 861084421 663801232 405083539 643402106 757199431 969742710 802970086 394810479 357393363 294602528 695940807 333007339 669272768 129897450 668435002 461881156 805193372 962752193 99729909 499653791 849444327 962139813 601628643 213115769 684941974 239273774 649183394 770814241 829585 632805124 637478406 987972923 259672628 860947046 746655636 167161918 405605586 562474404 231787783 297098231 220992813 569822117 244823247 436823044 521803776 243436130 390766733 615910490 140906613 484735337 171421081 132026304 434995887 613535835 423347068 620973649 602607682 981714286 996565622 986000382 717041846 310854635 359656441 830911754 736740359 166137009 670561580 702641292 173808936 490920112 154876265 910634224 419495035 913264495 734164671 63869558 541119066 89192840 724250736 916065202 354960274 495240486 809649524 401808906 484922851 404576909 915534581 926783036 468609 837723282 852096209 27395285 987820182 731816735 832535579 915003578 344887229 961808305 883209626 10504099 547835017 150231002 666634825 958156955 543511292 755596735 853432789 825495682 798233872 490107034 519849762 821854347 941662002 261405497 313998023 866783422 570874561 312452733 62392717 444116599 237237396 813387229 793567987 10561765 912107889 339788256 261792685 898431884 272760471 513435302 288387105 376154307 23742517 941703776 560466153 713314871 262286832 84906964 807641427 616762214 879723361 589208282 584810980 218706469 632798869 939108577 589930192 604750107 297876107 941847914 797085828 440779844 397534137 952343180 264552989 793935214 750413960 324344175 201149934 826514623 660246483 524242129 648562686 330112301 917266796 517052804 381658247 400945412 291715224 539316974 536134777 458008676 7463566 384403847 254753268 669191617 747783419 709330782 326971602 626133089 921299072 530733205 250927387 979147489 650518323 556293088 959365006 807586737 809704730 830984971 535280671 810314131 494383795 604055921 57900659 823645728 28239215 842813061 587832934 941142083 133662770 585454157 534862981 161069756 829379029 982474721 757265556 327986846 756188580 515616241 139233290 605653969 406417377 900423485 829609616 62898577 966484543 462757658 872652934 685547757 196628071 531941364 284352382 912229705 674332790 671263686 459845311 660203740 80835453 964637859 591283651 679764787 178662912 22635825 756098233 266358188 604573816 114281257 372422404 378105340 899647441 728610777 421512121 468781226 286118380 125731490 802546213 757257105 495076382 366513017 434585158 823706722 242631600 252712298 157285197 318138655 182674013 931766032 430165538 215793313 582039767 31031583 285187551 493751572 275915585 493966043 244815956 258345590 548749750 394784414 922024578 935317787 68050113 43809366 200872224 829942827 944629731 760411140 274547994 131757091 211973137 347122750 498684428 236304720 136063539 297610413 679881931 994298967 230212006 639166096 714121180 479930032 528240827 127556408 450819579 374898470 787766 107124362 708179606 487582297 953060047 276936576 325117008 880271164 47529396 857152680 148513662 183973271 110354182 283140259 845074605 24644741 807204183 179830439 688513818 171071735 468414258 35629822 103925048 584105008 488144787 459687813 114061614 456946248 827404395 850716718 939089238 775911593 799684382 54535550 938913984 341876373 957668612 732312335 761516973 956955037 860949995 46170127 45389332 308174891 290845843 757130176 235234848 914847226 761483057 313827318 169491119 554150552 26704365 227497884 755846101 729352683 381104483 947941679 592425815 645627049 596222758 498004289 786687281 243895006 832420408 489342711 682769937 378927722 827878292 185417356 698268633 940457856 940578981 457661900 889589792 399537961 353629644 871180954 421255858 303422911 800355549 22857578 741277708 265076594 68859810 464812487 213676513 7665350 945412695 675621583 388918167 481188627 63149100 785500594 128881354 892045060 767897543 22060086 812119497 735234841 887977407 838480694 363201556 100309541 55496994 256182046 176065764 762112464 552618480 388676721 1780131 733766934 319728029 253324867 650263151 437983942 626200467 947829440 168830108 648761347 922669997 28464035 538711855 25528519 18302654 48466111 690464099 137692251 160058632 933689978 544740136 85772257 909453509 85738061 645743007 7880394 116379810 733801285 985318303 698081632 483734079 109694085 131883571 738895165 760181424 54801858 769938714 795331026 264195839 84886981 256253254 931653346 941598375 453943021 424678238 903622404 768336410 4131754 816659515 368927780 184818493 254778627 971123054 567516674 317212647 989473553 585539513 270590129 35125861 643527042 311942034 871546650 800406521 90420247 154594723 371750263 752595286 288937766 564631372 634557400 814600998 515452440 995154208 31077025 908104324 204002284 79569763 803361034 16876931 722710963 36992659 547965342 116053413 527797522 548642780 292907708 349103204 522852547 963238818 418253593 549219756 682466580 278957563 203500092 855533151 338913894 40494386 950909185 157711568 464008111 725131846 702035991 381471560 113586937 821617000 399627394 821357701 837047265 179947137 452617241 22474806 158488600 74488745 806971401 891081600 170622437 613802417 599973712 921978748 371675810 914753690 742731075 255203766 301589819 127085596 270874632 586303152 494296754 303658016 19030301 811350109 224170141 672655174 229437903 378811046 385793446 377637728 223704004 662792168 31473674 376982005 518604146 14752116 152465435 889517247 822737061 907846158 129841854 156307501 260281085 391700591 392345582 537106914 544631405 254678467 908988215 371839796 737224125 900972076 724090939 891990958 270555401 199096125 219276593 782897038 22817857 864691839 851408225 469310536 191611815 89554415 341956521 906544897 445743187 277924990 853486843 434693908 436609202 780808848 238210781 222238353 983357187 562918526 738094055 826282169 257385433 476716308 638967368 199853699 135611548 53585939 812856898 537337115 495981064 626644144 704091306 45762653 19004587 656343059 383209321 811118430 264055659 966778841 963270653 188749028 969057791 992079507 139371512 128372201 214169457 722042437 69535616 506748444 105501346 570196712 677306830 814257759 704493254 454023400 865336239 970648906 275189220 361874342 988734470 886554535 450814807 554329079 367432776 260803316 624464463 662765219 979178750 822944740 726664273 251450087 707119175 383811294 432015795 985575667 649682003 334159996 615317025 952449133 274420713 28103182 228887835 902857453 169599714 756635669 128081524 575444095 540852395 427067592 388963029 810664484 667405511 191780498 323503672 137752657 881681739 550214801 927016557 634941806 498113377 595790617 791159704 800063063 589097413 531822639 515943601 881834719 966113099 224894479 328889346 598359625 500543319 800212391 160155053 280081869 559387235 375116569 776381988 342097177 435125885 498033213 69436079 720066253 999617990 264650524 269640169 196550910 683103988 744687222 559240771 329128884 809820112 553219133 662944384 951492971 238181305 17611800 137259063 892413334 959811616 12380641 568387157 31955223 764551434 581096999 4763032 271713481 106770321 384397997 892505877 365583351 860029027 502957801 472725170 629677793 74034753 304256134 830182829 415751486 279730305 436629986 415774483 921429173 143255949 406528657 747268169 810998114 306834786 686414808 276920711 303060056 32635922 950565171 260751961 363826713 221089346 991638223 970902556 982945568 191205293 609007120 231126151 387899991 671378847 960527885 829075999 720624033 889886074 469918223 305374913 230188113 957251381 350958614 536302620 660981169 389478872 292539732 940986420 617069437 70911489 293675695 602275297 932039269 249342562 391430979 731687246 777371278 70403136 847953630 748275834 870056978 896618486 537312387 53277114 314912635 269732208 812693736 735851573 996235852 45199024 373507319 808088679 614286200 217058893 678223952 542950046 850366953 160845807 22229446 729654144 215846650 149792468 670424030 12083843 720741630 563782734 851435859 990839412 326862775 971527747 525405589 971849201 110550239 511548844 256980805 573127663 72350883 287518998 893298874 442989108 737227298 579288868 653723263 113199581 156890610 467077386 811162578 768530906 48065692 753807124 79319335 789314413 297806619 586262301 247503524 128208047 22682977 914937624 709174946 876892427 137168595 865539467 626614834 671430081 523441352 813270031 63216533 826251364 867969805 904386514 902291139 848008541 218082404 551028244 637740518 795283558 206889728 179901101 141231068 368228623 183541514 843228294 79524024 872090940 262662944 197251611 547549248 5442468 213696720 369649152 586368625 101121108 391345954 754506585 44476407 575132459 904133899 518224992 211336374 537896539 143062011 669012706 39158340 430149870 929023568 546588354 84812908 798086975 327363552 863530101 716209580 213749117 611460212 165280133 572081591 790309419 744996423 643169039 178027509 543366819 876378763 758881860 954527742 898954638 85029348 462983403 20656675 663507821 116159211 645982174 493375973 180782356 55158444 670732680 222398587 914263081 649743144 871743598 908790097 317039529 651822036 119472035 897537156 254778980 149336600 850515793 871410022 350910844 370081746 358034231 362995968 421236458 219866576 938564390 986878091 793625593 840182873 158144899 433667574 398582729 493834149 369191369 925275236 717726669 128547936 505069828 742537899 171806798 301976619 910488662 817168341 649515749 627295259 687906165 960675746 382393605 103131448 489093931 327448837 68706415 554903295 629353941 301907107 314902459 398964193 17292261 359957847 27194070 738434498 425829985 662431409 942352254 80731771 464018273 845635442 281009096 687269976 135331988 167051281 674123931 695128218 303167420 96871737 296999986 556466165 802258733 284521545 180998814 220545812 966424658 847285202 902227010 382092561 649378344 131015709 291475541 974591485 371910081 295955363 519128932 620208990 561098947 649296786 481333709 106767019 428841447 341076047 848721476 136239058 69644154 338055662 613092434 1917363 842303967 129786044 69645009 150347427 737823242 81042870 182222449 250200298 234931718 30815503 156504119 397931333 8055153 907380910 750860793 662556516 385314811 567389357 637488355 343190637 459269611 352919003 995211764 571342711 824726681 180185659 973838977 938982928 865818869 962681731 104622770 313590968 18620415 138757022 669298688 410570596 522174284 879039787 636437950 25090556 229532552 536603131 93277069 95805661 895535342 569654678 176260069 624679767 67035602 861527479 312382099 895561775 985421592 192721612 950787381 726460447 370023098 99679863 431950784 448031314 169189957 420353551 884180219 667846888 445931356 821234976 368934145 132354936 349107764 370386407 901336003 783151497 713828375 73822166 164892548 998632215 85026785 982955030 745475419 886447893 370427526 505162240 762850228 301639653 12162954 695821731 576204495 918682593 139513223 27294274 679464768 248417750 152092843 138027219 340957293 552212868 486108471 617424000 144940819 71219743 432772609 656681770 959151042 818940113 470969587 642472929 733584732 802155830 774055305 379628909 6096282 443130846 28384599 832042185 194234759 92459726 997623425 405783970 964345347 642595839 129945666 634289884 490794049 288173534 137732965 787953933 497819209 997360074 705607375 992606976 477677943 376044186 342664179 157250612 384623354 305262356 904586588 839874907 871208534 493527159 9016103 32604891 531992034 644296946 556871558 584060752 880896843 802853418 763517758 920916488 822512655 393317304 554701353 501993861 567811075 486051753 898341813 977467903 659511758 91026172 464280932 915909088 243025259 86010920 752314698 580408902 196975787 40372115 830133906 311496580 367461809 663925276 986208249 303279009 433693044 947723154 879135313 208778455 883170368 782187834 614252800 577966613 180822581 299348557 827810430 149760382 461457351 547471991 164566235 546784488 214243900 800462426 942258742 927489630 53163057 49046537 550115655 744986271 924279318 777573261 269865942 812189084 980354221 736208227 295010625 98846973 8857999 964641020 579014907 890329245 294885287 145810748 488904967 719106826 721277364 810275580 624522369 207536646 20910284 43180937 259261973 414556425 117089492 86835490 68916870 546509244 458153224 707707261 466884905 89424511 894114938 939279938 600906855 262013668 279623306 834331535 994745406 509505585 579254643 894578802 467294401 606202339 556281022 426390386 65264276 886618150 761543629 344685831 115101040 327219293 215157842 233615901 485759653 370090400 789479636 797583510 799535507 695047481 835983665 548808133 551565360 70565158 337722135 406392051 318593925 282930843 186145417 475291101 653883953 997043837 65911904 534456116 77259492 899332583 515635399 899274524 542416613 660228777 179984831 847707053 601153677 365764548 818386841 512441717 827048394 967724015 474568574 526520821 319654045 629727253 890622954 798311455 270615964 413931989 926807341 871110879 759418993 664074241 552016873 17932175 839988312 906402079 629043095 53582464 787846309 855048171 581890818 59986296 79537980 106094547 892970697 239473199 473153303 46766457 969728993 17906385 554581188 901445429 190952978 124748415 311184612 645536657 831006837 116215245 546531502 628235723 682760188 393105733 776387177 823124566 78397930 570025443 665385973 469256025 465862743 102786968 364387139 821327662 852560557 819422152 987923160 898560740 4967982 916310987 297503311 174312126 9898603 460217199 177236692 547950770 287488974 942204276 676792745 193347819 409319441 592434191 568291492 264075336 216988357 221140840 929882287 952515290 235750349 362648092 381665352 611162218 884676064 360726971 729552382 737067248 490525962 326022987 226132218 240966429 437099307 430908355 524281715 357824722 876132470 726871185 924482361 860402087 38779380 187324437 541788715 543068517 440136191 440181795 400232641 844533388 415962823 978959493 648406147 295799502 888220368 82388343 739456143 599303570 861955442 700876329 851784215 628166770 581076312 850941761 735737057 775904701 861213442 687989590 8472005 702261494 382031683 351799158 820978483 733121875 762811843 764553121 297576362 356415551 682936701 2395467 526150210 18436056 926811970 262739934 895786787 937129841 412440117 940215094 794426380 539604497 211946062 248821795 215246029 609197299 715688663 94707946 246498253 405991940 373633266 948070852 813223556 752608873 639614992 179442014 889837058 539512566 38013051 913908056 973826919 335003319 712567245 275793606 275288680 891357035 62018935 332561074 680224721 660028420 616258875 698171031 516840957 475212072 868357043 234702056 257520480 394550195 12986568 198924679 758842110 795568947 554868283 905024590 446659313 613727850 123140127 399728522 71457510 152075728 840468828 192208506 17705632 658437135 360943150 646434261 254357620 988464261 860774565 807768129 321979852 25808837 755115811 924136669 181468069 603706902 90118369 710347704 409911568 301610994 372288617 246978135 621410228 159837833 321725469 909487155 343942730 55136316 986603183 51864376 317712672 235072290 950504359 105109064 464469143 771600774 182583777 719283638 194131877 715684966 337462796 295173580 963924052 521288182 573400876 849198405 402266177 714853403 527051544 635816403 310971678 875500273 184536828 180218522 899944752 482139974 214205401 44916915 544895953 791141660 327011072 343733162 90174959 279604779 165219483 241083393 983039627 538326620 535957540 188454827 387492668 367741519 198338284 479425169 256825002 228649942 426268822 480200977 198703379 697640056 915526041 427207801 921231560 258011119 6454721 163989393 250867889 838800554 161134766 182564110 601195205 455461964 131598419 751645216 784533651 940579371 984973176 473810661 411478461 9101266 499752505 326619891 534521463 73809791 195453062 254663122 85919244 218415269 86903969 898813311 529381721 333868139 154674082 843747563 431215953 561684524 961445366 34997370 32857463 705278454 457032156 357634181 372986983 515595019 837573607 333713368 43813965 753607266 62140287 922315316 71301484 43546918 399550815 366236366 301664408 355706678 88593432 221940942 547263420 657991076 742691981 504242130 608134742 844974902 926731893 4413544 776582134 314062056 467976413 106026647 682376386 821237352 238798499 143325783 732113397 283590809 483305724 356271636 907408988 995623953 840281583 797515055 59818711 49507226 587293911 807583869 776342750 989195444 873564388 379184838 622473977 809638930 402963355 755501895 418069831 450288153 993793874 721236529 841721848 842305380 26442677 42956071 839423955 848015170 191716420 452122564 873347761 354965046 672110802 380067347 890202624 96279158 759766535 987559189 148358977 599503470 464500703 331179327 421119625 401886010 553713194 154322169 336453892 105884463 713789706 671438112 68335982 244080722 632259447 364676996 59252888 911493855 381717438 731232107 72259561 181861828 540760062 809796108 392421338 188936995 360687786 302770453 480795769 5024980 216011530 544019238 829350375 509976800 131571641 190166612 248406234 328444935 519463208 20812967 476434204 755771 282261530 191551644 126790666 413668643 239617574 467792291 333716757 769974937 645652537 176099489 64912452 177242412 998222097 12979824 248064689 468396191 176617923 976354395 380916487 91518056 955515957 247645347 310061067 82943026 545686948 782575356 934915856 739684443 109223200 934818576 794889857 504966263 706417675 335865595 21956699 816360395 150339230 871517645 565755055 922341842 354188388 760444939 800791589 320432316 838489277 606254639 868654196 853984234 145929565 26940707 223298283 83060339 249233610 489559242 49579244 230423971 185173729 759287416 285312107 773157751 618638673 935670132 739125363 743692065 342727198 452157821 607391649 78557066 331533856 903704898 911444647 394436043 994781569 668685033 350674122 361823155 680863299 195934857 710213221 140091461 702692536 584265391 556793188 895092278 902644232 476653277 258135498 351225971 487308462 470653446 172818987 921064089 26307323 584543508 62749746 10893179 842487698 669288803 306335005 86223264 392886762 984176963 321537084 427378115 974642896 855667833 990925173 645286225 340165346 172413118 868640195 208389870 920039188 761367103 24023474 87771888 545729327 737981979 757669861 324322786 52910669 80484585 17932177 626093827 744214367 12650799 146703103 966733509 954571175 710267884 822808078 94531406 604396350 79151887 764642478 176736506 326527887 930334205 211138406 776186071 833727962 762117647 700974542 548706087 569466802 327701265 455567638 997460450 966630784 995410885 892725886 926747953 869012221 91615838 902873052 384980468 187679676 916711173 745411609 112511549 235666334 625485400 305843124 608816083 229898587 816397798 802620221 361369264 127710464 374397620 663030747 98980739 682735211 566975419 669327303 138126383 108724689 895367271 53637327 434041930 787591225 329851673 239768276 46629791 23551487 125147558 406138444 38834349 925314386 741822423 6821568 207732517 928339637 419884519 144048975 984117871 460451202 729042696 648956714 88235046 451032674 590811614 653463574 375779480 123184598 815820546 315860205 511134023 274698930 371683200 611905565 589743978 827232412 746399577 593392167 680474220 947624593 691268098 911886881 166524012 139895137 290967267 955219509 705256124 732148782 23302106 592626208 645406819 387500785 650633653 738130868 876036251 358749941 393316027 822470998 608083 728420698 162673444 757522048 319646125 260825491 234284956 322256960 203762305 773482984 261621700 851610039 387827417 21106677 248399537 344453276 781175411 62743849 554171755 65049527 383501890 675678536 595559792 605590374 172506861 216171242 635359534 473961499 24775503 168130042 373972620 381096667 770470133 973810231 319594850 86156224 546868899 666700726 360627708 525804665 185771216 954415966 727510427 765839557 101776933 568756586 809214196 957709563 346626561 979347435 227014319 493955206 740926712 342908740 562194921 523658337 116279119 778657452 496828082 600408991 674662786 306099375 757587600 805372389 840796351 420590510 674476795 806884846 428579176 88572506 292540894 914642950 984518037 321206845 9768988 281445008 14149008 11470897 169105417 674577025 360334935 404921574 255361005 431538658 878895645 80887649 430539397 122491985 167012041 907800951 42837890 178612608 580599413 209078358 271197191 524003253 647755248 975033085 233039663 435273801 591664445 860461759 423961732 657665577 752447506 45127109 455926409 88274008 216684634 693063560 552874290 601001579 645217459 229229402 308685415 142876427 586129137 159822558 139999877 688055415 276116121 85163660 611142876 762759935 10797927 582555183 95512626 636447114 726009800 681808742 33540414 229177873 264346465 54100006 193187630 817451554 698345862 414023990 49522210 160650078 400342467 824537265 882983342 521234426 230537815 886120072 75025756 857505090 415618740 127483646 362629928 797004818 980282369 278895914 862526466 773013851 937356696 242175352 466551887 936237220 153179016 378153512 677197929 390903430 886545172 819642318 154005274 495665455 762953009 80119760 722453029 143103200 832112396 368102635 536203453 845973615 725705858 345591727 458919436 605954502 860958887 557722878 313183662 671949922 697020992 263704209 741694515 10651093 168088648 12070771 321573280 874320964 536919663 198291588 342492654 535718633 19109782 161433847 712688522 995646098 516352084 1680596 964411860 725556256 599063924 684975991 972224928 463483145 545840245 431566863 275881400 781514711 991564809 945104416 641128791 255304871 964466838 166764545 695477935 375664555 898340536 590937439 775064932 721581480 103549373 247183288 437602576 101617785 212998695 827987169 675470269 602043274 127042606 240080257 940302446 903413341 600222779 284718483 219437974 32409865 574509934 414434024 892036510 765267638 169230874 579953059 234675044 531410978 367522883 978103483 405035703 652768287 823239719 895693948 770703580 93491218 437475506 543633158 698168588 29333110 500913672 658101453 984034035 553880407 166826495 847242007 29769523 503995608 450462882 889124481 654793183 147451821 925004463 424339323 62315776 392337825 834597914 256202951 392691476 218941970 481192072 182989822 467462537 298908784 217689557 638617099 251832647 911057090 466770574 365931949 269377827 152517152 145356408 370804729 353983085 184548666 598575879 687690455 14522211 594866383 992408552 714255744 898141115 142275639 168909175 508020486 559544605 667921370 666915657 516728524 463928743 958346679 657521828 40613130 652536424 903557598 550566146 619167050 978227173 221060342 169462418 809000174 125809814 256187576 124237495 686414760 465586538 68713585 400630919 19594751 82156607 831904132 560683853 771438545 222697579 291336166 570705671 612451019 569434934 513440929 551885544 696830707 769158237 30480465 684512727 491860767 576794769 401351082 49207023 776578427 91574262 698115568 74616317 559677447 506345636 977897341 140761605 46572311 36414762 23110206 855560126 53485521 485303046 36952630 368172561 223725746 355992366 726385659 27404957 446742026 263321226 152343348 751079990 124378747 520298615 287625505 126846306 388288382 428205893 443511059 406998747 283121630 267875514 843343599 496801296 399639098 999263886 111438767 397978531 570495879 621602029 789157345 69116908 908099468 308339960 830317094 71260020 791447909 817412932 358389172 108215675 255172097 113318489 191004885 723942004 703522980 22459188 911905126 140562051 150118758 780331461 814454617 870016518 799776689 97033074 321624371 243267593 25874630 798786962 386890382 658376400 33830969 298123763 917148312 924249681 213398129 338042709 509406867 709876407 688953129 870402541 155278419 168021217 919829490 270126051 715586755 413808864 579129007 992587732 462908512 943946364 869570071 523093328 237381052 19039664 750870070 946309981 76804092 988499242 282737900 313834226 416088923 959686860 706794092 284571005 164442021 973972526 556311999 409687902 80752828 992834329 154913087 911837289 787594519 119194125 893929244 278594152 585948222 708667068 735553498 647922071 874720079 686436493 684431569 406069542 343158652 295763738 13914796 398662075 637315723 21174450 497044971 179309037 420842837 553354968 947057505 413926090 125356615 687329985 619466934 172260946 119068132 970018266 574957285 826139129 156907328 222992449 597916351 150016297 618980487 807010119 606851431 908033470 718677364 390446068 541235413 984324232 739246554 974342019 59567187 61971404 220842015 633781217 917106946 315587524 9079228 195215922 82195030 370385178 404302270 875850061 116827798 10319217 593170248 265001531 630533469 16420828 295755279 906563259 994550812 322955109 38288092 60039105 345320597 873761672 941584398 199589363 2998625 667285173 763448341 518272555 771628140 543085777 472595960 774061560 281036660 625256373 404120016 350312476 923619981 305851822 599387979 34137871 976726687 614267387 371328554 937649019 687889382 888760147 692094659 666424510 954265714 570728540 250470015 515883371 736332965 295605813 947094109 570285001 843957176 633828589 79503726 913184338 396586549 90120713 898089815 560269365 706517118 51095298 498607826 807158741 518869829 701958085 746420781 448147784 53335570 972129585 331609545 8688857 376580545 412408220 598685852 8098183 349390593 306911055 236055215 852798340 256264918 380765445 674078113 81295030 131805975 972153968 223859491 116227897 733903088 212785844 675843450 143228890 573657442 424064234 690905089 713232542 620355006 677415071 133187492 39233337 619724846 998570578 916932453 995715480 617207340 374486521 547068634 945551960 360763657 627499900 110650541 563028812 544124519 276594489 393585947 773565434 915823807 498465407 777020022 689853983 181069789 949885459 976561571 204404263 775118687 805708974 813377693 174176181 337608505 223948156 207746288 597174305 158282803 558300318 340930622 897534709 911868009 450295721 927814846 285507696 122106826 447091237 650556344 575976451 457975451 664634384 442539530 111014614 421198833 62539864 500871846 962262084 67611706 369408868 90391313 164758618 84350389 466309516 552703462 488739932 710588661 383486364 382164305 720630081 189411682 904681814 748004757 296000562 6132151 183514604 913950087 717436687 220682885 675726474 769561360 392355050 147042991 307332810 899569070 895245449 136674796 12695357 559742195 390312680 445849417 615491561 290844933 103433141 254466980 827764422 264563997 99302355 812664370 280127552 511161864 449688023 717271801 987558840 553864361 475040398 108697431 285198851 601633909 468150645 66285177 550000617 163556341 197257535 613719525 186822311 949312327 70565459 952524273 153671278 497436318 269240140 520416841 653764834 677634238 474581367 503088749 435713947 648250240 735816536 304335920 402769063 522006100 935450405 313662010 962660102 825233082 537554761 129121927 379883821 193284808 980225251 453653223 605938564 143167399 539056708 404224892 48626408 923126806 379882869 735700798 158256937 742719206 101590191 313381498 98664845 294890364 351760608 900160335 288388939 541772370 90945069 299998768 989898769 216742261 553444458 872906853 778443903 161504008 919444900 522679433 4478122 93071296 33008792 125507341 342728346 413049703 872119609 731926708 842937036 203615578 103449389 360245525 731267248 242564875 911930449 104306461 499008812 23706239 360786737 932625802 572512535 56238800 204746641 316666736 638825407 62374572 992931559 300734648 701452644 328742100 81384157 987865244 714723770 450394270 830492116 243967021 602650219 539644532 532181852 187582669 384925075 75813459 490585277 993497269 119081026 797425741 685696882 538574704 749213438 441540359 33198505 597898846 664043070 950356540 304617156 376957234 235215088 793646392 480277466 604802165 268033779 916281181 278029878 680646657 813223326 135142049 482674647 130442118 659938360 90830350 717747183 407406344 695982717 305113153 663228261 252141407 638492959 103928300 733612371 175017653 60321859 49509461 344109960 518689548 217788928 881414612 790455046 37648566 252291300 372546137 503385221 243416283 773543022 345527779 84101359 717923830 996126613 581277962 373338594 80839256 488624447 987075446 715239985 908951716 768587979 109574757 677376099 952712273 413435528 250429737 449601330 468597292 407373371 186019240 426032142 175673555 832513949 782797019 708838808 610775866 755686619 341309263 185427495 816537386 285823764 357233063 80126022 641558461 446921439 302321943 550417716 890319844 779096770 522978283 441719650 668181729 777385916 43363326 202464505 957611725 57473980 239688003 752648786 616014611 353699879 679185472 481526907 497774323 962189398 296341646 967769529 184656896 781589525 287505754 478090752 87901346 98258982 154976743 142295933 851038357 527422140 729800202 620441357 785110888 863662080 113422509 463937731 931251968 273700496 932907084 867232870 210034706 569928187 124061051 287919088 765575340 209353542 916233053 746806800 499759788 930293610 219762222 512868521 133930055 937555923 511591355 571458897 477459076 613089506 22600165 232767955 168428479 801651309 358444322 833391789 215116839 704484922 762840316 751666579 481548863 658444423 95972496 458240490 722199392 759551621 209108751 328388430 827534390 75055320 485372992 909970444 937914687 565678617 288201468 44688808 104428880 205784404 106030513 332516697 973538319 616103050 376692960 250835080 670556793 2213680 979643296 625828693 116848990 333768879 64158232 571114258 915765728 995185378 707469832 212392645 57995768 485328539 653084481 207666090 583039217 405550109 789946920 744371119 232060395 427484067 42262583 551638519 20651097 277580248 559582844 368232792 534285955 112638046 915214873 988032733 939416069 282867783 932083906 87192132 511105102 221016223 996166466 129180288 741615906 182063328 144170486 209501752 746344217 974711675 449997648 579859015 240177182 854104150 876198485 781149242 875967984 635936073 974438688 986622165 188743844 733557408 240466269 485770382 775658785 773723036 795624654 678317584 473740194 981817074 934794186 867803322 670382648 354977098 78233017 840784670 263425350 577456065 14875033 299937154 435738115 144253543 270732924 537843810 447402747 765063874 716299272 473789676 365403278 676651594 502585589 674321794 549231984 697170667 140729747 215343676 532265767 266498950 825678401 963717987 99693201 653742191 972907511 494805495 542714459 648566768 938095805 603728426 660263818 384904389 730188850 451997155 785451510 804252319 559704582 83745597 615488714 303663777 521500799 74624261 713093894 202817510 225424120 604886335 375963133 333985785 509778526 679874977 206089687 826000731 744606130 869641238 687957008 481772544 991507081 940008252 772351479 312769490 260481423 571604199 650998064 934102317 777949439 720229020 446237747 852853601 441365805 947104790 464535755 684363060 406606076 890386373 216487063 432442205 631790696 14169418 847904140 446465802 477623550 832540669 756976753 715740763 62590559 750942055 383044961 960324324 779883713 266059720 454717005 750567983 70474093 196954258 413023096 807006264 13097794 287289579 291693561 26329071 72047409 129783856 812341308 804109753 710653119 623005805 757583489 362106352 385646726 52220133 728504156 138047326 899908276 768126096 976043059 862755270 210895242 881265304 287250883 197999196 585546206 484120283 667189916 775966279 47010713 266009708 82509216 151963942 657720378 271978002 623128712 783147912 471151954 969393352 320860255 121483122 552313606 319651899 251627013 734567134 400205456 945923919 42045101 833055286 730492606 733387931 996189791 784605405 644059250 89084136 338643063 414527910 855648544 265424821 393383972 13500763 287111507 226271670 867178218 276241207 690955560 106733905 971282720 714099052 63405776 614289695 334281843 916043679 237054739 715034737 730917985 405264743 914452424 575608777 498707647 259847377 421150302 144948060 806250036 444963039 967430743 459128215 129693371 883311620 473186247 929117591 214218277 786144425 912836057 540318639 767089813 219854252 894224714 10032614 346383618 616775900 54798572 366905462 660754360 20745086 435611173 620133455 523523799 187296971 255116653 427071889 635214035 561726063 209799892 294144534 310768370 174586636 655522425 750276070 871749585 699231925 734645012 357784512 392483808 995679603 661669997 104384920 232163297 457169348 251682786 369908499 729834349 630313239 369837797 963814924 605394287 181319249 276597628 685106963 363318438 587320907 123805376 900332009 305284135 739856465 509657950 764446726 774238682 486236836 469374489 473910035 237765368 210204409 747371590 226028400 898664083 760824057 777904206 762455215 628666894 967278783 519106607 650516503 454432673 559650141 367644668 109477666 762555094 410255191 825973336 803085311 972733199 34366757 620803839 199897617 305658877 198344630 127561022 52840557 501563434 317733096 654884470 441969760 81513329 881392145 259604637 636096999 130625408 521774713 173374140 163528246 736452189 759631325 515272562 265554994 15125726 905712878 948533615 455311606 782488879 570355152 588213754 127377490 697340752 641965724 339671404 89736007 420339605 718344158 863733171 814905996 191294244 550395671 340588240 934179084 790415482 840351036 84959065 921329766 989145575 513527605 513771256 166638444 999422989 749475935 671262953 819577508 715577445 434937099 886269056 523920074 660158906 372875004 696832929 511414092 34378923 631896045 156945222 957385421 193341997 493033993 758727677 628413858 366312967 976716913 560020583 862260312 481099093 866885562 162034106 416465964 667513094 236185196 43744832 763509649 594009694 268429188 910271958 13047982 468378996 903939314 724030574 203671517 820969397 787236380 640613517 489803822 132654687 710346329 102565326 373991906 975948039 590737271 459985757 527345392 672845332 225856054 265656956 256229251 735179073 538672843 23199489 716345977 143146527 37349214 644593622 392579558 159612560 130332300 48675192 62015375 30044494 888742373 950901369 892578672 779860578 848753775 767791103 23787574 759753133 287691553 258651202 220179910 111031650 355662697 517598993 310234548 270471818 3683239 640216142 413546445 275675519 749294512 159714925 281413262 761098353 122654539 453272313 137038762 976148964 767017143 520067344 668558983 49493296 689935140 454629346 832591041 531662592 588372277 43916597 347614886 68288979 49588612 905312228 629041081 585308286 35829534 355865691 850016560 386325673 80032771 151272221 596913782 533471053 316646823 975896895 831095721 95069500 768766836 20118250 314240541 90386329 972969798 945656796 250937047 255731292 992572909 841833448 893116690 951374543 205270959 20332913 878804158 552571411 251180227 354034163 827581692 301645212 748755414 639849595 101377699 219723185 68973706 702269993 826699966 313184237 63793651 938217653 259337996 942484929 527961368 203243240 138032255 418174191 16995704 834202398 318072253 251148816 604405634 470155211 171662242 982941968 126761755 171427827 258564028 864563629 42931228 243851695 970638542 194097147 99724498 789679 321731918 886845154 653790845 142391475 589281254 498825886 177598417 160076817 713433590 410566463 837010295 905650739 108714000 860232999 571890317 162952213 756052603 735353230 458060066 60419787 296492978 250150145 700918459 214430201 208713954 455998431 475890385 955012697 95918191 678579419 841963857 293585977 162923631 400682365 159653658 372382202 494786861 50791073 345929346 936864914 563784104 79846134 176572370 266101259 455717905 445056383 816447429 76073986 141745745 942628374 497504781 402187817 927237760 486141924 710842830 535534789 535954287 823985131 582267425 509261104 968456991 867938684 885395091 222174296 646945096 109248193 143473571 19223870 560311251 251742004 470004551 778457977 843088736 80582182 318835560 834914736 21097921 865309497 888787041 740979235 899138685 627152102 866126724 71357731 897261902 968341753 133570965 485597590 593784483 543608591 340024653 844302196 156783647 558333727 301486040 406598732 173286168 587539438 995192663 667602880 177689881 377000345 226725727 945787396 666839136 17657359 53627769 19133027 763967585 29290389 929617824 492970426 563244097 58757952 303296710 581047035 195133787 368583038 233729871 590240172 522994623 7954574 259035539 529078373 350709422 528659203 666752608 173192534 629331743 104368709 128119671 998875326 61073982 592123151 876539403 314009461 701128679 186193906 916033861 255309667 637964591 492774353 645525186 425217542 656535772 413080163 536416019 858454257 326649832 646918325 551133755 801243207 716596226 291383717 900346933 527246660 682749964 891802728 433374060 897035956 887611038 964173572 975221057 447663994 810666114 432881879 640763529 262788363 118854966 850165006 210486284 363675120 200242541 661281071 665895687 598795336 147787150 994498960 798605227 132405315 170658867 848407005 786838940 951910056 271815340 879012758 271924338 883834704 641875322 549836942 407374907 507713960 345842388 805411181 270454263 701180723 174844197 141523503 228657179 318926342 698133899 125384867 765495567 380770123 811016282 835954414 608155056 707975102 393896855 948985349 30337486 682588211 201888126 136124470 19430063 297402382 80221949 549570464 549490571 692688329 234644534 710082742 933345805 676005746 365436673 500669631 428898008 21073194 243614567 853288537 20702208 483825575 122290216 581707250 327136141 663832755 809893686 456499790 18601980 424941994 802697272 62805252 476961469 608988672 96989448 132695297 585049782 386194361 488212021 931034883 476170942 648447471 183378818 359883294 699225123 933677904 425577573 520452667 548181285 706595998 666434185 92959380 175063416 234350381 264165964 50700346 543354054 567663463 421960002 481814159 657298219 310346059 310487728 186422220 135593911 796258026 775989778 113589628 55957232 34574570 508260245 698038527 567825229 959766787 987261085 852576264 60218812 557675140 696405057 494021920 54073885 362230478 950217674 79489057 466194884 915679192 180599608 853931195 42903547 780714666 179368893 832374514 924283005 882634210 205130303 765966750 482803709 477053490 654624218 188369129 674341021 909158111 989502556 522507989 343367799 669589060 331123400 687779252 243103256 628154957 168994772 792833710 466581247 171329789 486746218 634121278 816675 77804264 27339306 489517237 463956586 266177977 211266023 71860406 795268915 868757678 477940774 209280440 236053709 142179095 155485090 94462088 435431677 115423962 93211083 624782276 904900988 949811442 221861697 442037344 270623863 992512491 868184158 700897829 961181966 392428648 656629674 9563693 912803285 687008158 162594916 981534057 548989781 646894550 316185856 659129115 71886988 783604462 597076387 851551580 890971497 568218329 115236009 363346327 561984849 440070682 109663520 246403340 964065181 586365005 771137354 204433230 560800282 34473119 757493535 273599685 953547143 339427409 636176073 162984237 492238362 164383545 302691622 376153621 508144124 152467520 497234505 239354721 211941320 195769829 54359032 456039369 139003152 118158520 805861424 364102488 752199896 95322080 201471901 455531501 245315609 708047254 346854947 261975485 332186687 562802088 561468760 523122127 342597036 607035383 961127175 945541759 591361075 400252153 666292142 850311675 953824669 749875255 683166976 726678217 581160487 176827600 353796197 14903359 914784514 659950581 901070197 519304970 424625874 976345963 692275841 533257640 313708592 397243916 656856330 639762669 616255016 784367174 561529415 672269954 708368572 220279962 639039396 164768097 234482527 853555742 992357694 803805787 903702906 84558588 89726055 319961234 402450154 547518705 668364328 675056127 346489984 755047886 84467130 803829741 900690048 399534587 315652876 186071420 677185826 23759087 475269953 672779807 458685205 669191097 607837487 209730590 411354103 391138682 813054432 109736213 257140958 542174184 552702740 222259827 986182866 890938317 511072190 890947580 867558224 500866438 603471491 874630216 625728201 13257605 568852542 726649153 788802848 481046736 311273087 71372457 530007600 391244671 869922823 514430098 297512004 518586689 170329933 599153124 310394525 828335576 17998076 683351258 152239600 265833368 698132083 40088453 812798693 204368876 970064451 989472840 716932249 259936722 843196597 647263834 442384157 446973018 280152642 153226823 108140532 339380522 610544664 324487791 370543769 219267325 985042076 749001606 983039735 808058399 719982562 438962962 60581871 197499635 51133495 181815793 413615573 481944173 625736344 82852048 339449075 646013593 994627384 41212596 516190725 224610578 830286334 760074101 442943164 174331787 497842436 332501566 748065339 44268106 533247257 329442319 303009181 595249320 88178752 735392827 572079725 658414994 460774447 626695402 593424684 296281099 602174161 642941336 447567822 98863016 751185093 39737748 357792829 64445714 748893660 859360898 609894613 25234056 525986206 777202394 282381030 454380122 352538054 545438310 825116982 624316271 911419074 551487688 327148668 8812480 257393204 54773234 252348902 792262874 500337523 648971436 537380244 281301088 523558411 324621073 461171482 461691015 55412793 377294610 566653954 531581593 494578031 630876913 754744392 4140915 929750230 447565768 456402140 59999750 346183623 241084928 733873700 365095385 882393681 2361306 369106039 525321093 684601271 53759978 241261219 823743288 276409583 320702870 254815847 721257267 116674339 879297435 564219130 339579468 916685364 425506441 694022018 118961773 806473010 353735490 587970974 703468819 720961253 184492927 372911581 489041359 760771656 730312267 493399621 497711816 672530696 528069765 775079117 407147832 866215945 661473635 571127266 417489387 694345185 354972394 21800678 198674883 921272667 856535671 352023724 472843830 997512694 182454073 262945790 37402062 198628964 768946868 664572951 288823464 221844747 336871231 741049129 990450934 432827015 306807943 223234265 216992637 644549670 293729802 979437758 237508632 862191722 254795677 857784549 832660531 996772747 972077543 579686480 95158608 277076979 751849187 612357490 725075334 206876352 419970146 873820853 440388092 105753669 501333639 180891892 329668467 689994889 375321673 380832769 746783418 797251014 930272244 680253216 804224311 891734763 581452200 146615690 45184869 521930267 473917912 185832172 490458448 31266604 770403277 90728421 686674715 132778537 291746337 708803723 689000826 897172433 33046852 340565735 827061304 559100437 502538235 42594676 59070643 775706781 887960540 71966116 445074523 262284100 528787410 663861339 920722742 21046424 871142559 474352242 70126175 27747931 491640149 551548725 439214722 600865797 123964380 204285157 128254050 327742271 584984432 16829239 220040020 551053929 266614048 41931220 971255745 307066645 941134416 43503319 989283752 940144777 60035384 730962 218614041 712236097 936310626 743266761 446148795 285427308 816748080 477352117 62016583 725779050 856033107 368806658 128002314 981524308 388915541 762661521 405556327 407026804 203646481 488511671 121112147 553245128 533758261 403239100 335028183 377490052 711912135 287290461 356500882 747868557 747127197 607288395 779132469 504015870 859405795 647611050 65539332 752878503 3471257 213086611 800618076 235277193 304481555 892408210 524922407 526926939 632212343 716059176 834192489 131780360 464556354 56979530 187180983 83479343 67629252 197983456 321281979 131969954 499832991 251830087 660402 163878119 163275340 6345168 617390317 328093626 475467413 828437054 404096339 790085001 913472540 361483340 155721694 743810806 199294419 112357925 841007898 371833945 190947202 675663594 95642025 519319100 855030853 211683632 174484673 122409437 984918283 219095423 663196332 163801007 624065304 876142804 931321671 262230489 969242755 287315743 735843459 526224053 269291193 194494406 859477224 239910738 27759352 606495777 991330317 336216563 368861397 519480316 884731681 321320078 842708151 417023000 537124197 594263374 529428057 404343465 419952304 334001426 683467596 156303321 182431722 662324715 582801266 605164612 991450513 252218274 581320580 972646266 244234807 882499631 76627342 769723521 205395201 389517379 297470318 774538833 735710250 150596031 882532184 473022549 614459774 128990779 89529428 977880816 72835295 418071936 929831615 892072438 580856516 42825230 79592646 286092079 152332981 205421975 797256942 995830487 643834320 13142402 933880975 618969121 582159175 494857065 35230292 567260079 413365472 674529179 120122044 422153756 736309619 641878939 826383004 100952178 468858736 481737375 642799515 637897396 243079510 581362194 557984437 713676886 338583101 255647250 921338553 270116543 706940493 229305842 315889355 396966862 29869893 174717625 33440994 370943058 34820853 353122722 732965963 257963153 693484484 616406682 142011940 293511874 118752043 388625606 934377954 514804115 514421303 173399290 832853964 360270499 441218571 796265538 440204669 829254921 144308828 918625373 400603750 9967051 338873331 100918333 283898441 685536360 775560495 876016264 291568063 955284815 590722176 753139226 865400499 234832997 839833325 306072193 172706533 803525508 113135247 474700927 747087465 392416502 189839124 972914828 318054437 317089790 352122941 509870930 760120406 155241295 151460960 864473647 716174603 75300243 768113894 922473398 277161641 892303333 846333646 172473390 33754725 392502871 446876968 136639505 822592717 215261805 466189211 607630991 869333568 155195296 976289505 802545673 274482033 814344669 14843205 183947926 155112424 251123203 604249899 413114497 492910721 889013353 582962057 263702216 341173738 488695637 235920998 414327711 316481321 437015941 856494434 519445227 66420245 28586666 226856494 254707912 212002776 276831721 216748815 149971972 380203891 512690776 669395807 984950945 729522234 456113543 118556172 638681175 788072532 255468532 448835096 411567887 958206268 139895701 337089815 603414377 136246339 279428691 907196852 854203703 267796747 448560265 810451500 108418048 567230989 462760841 185897681 852773246 720669972 313722391 366716040 82765856 318045632 774909676 534985035 972878729 180408325 609638708 843778729 311669519 748353705 95556880 256202305 170479165 115061193 607479317 950681674 646521681 96982868 822110668 665462798 299329470 119766414 407195184 250995819 425881771 906399119 494821427 318988881 938623859 922544578 932422713 817892166 416372772 630809703 16412314 289105381 376883712 238981137 540284965 875820634 8121854 688921640 54194328 684854504 655913801 694244199 983049001 925090403 996575680 756047455 251262720 324812982 352705141 359879155 497845178 866733919 10148398 586711002 791061480 606648302 678014951 975859489 649322382 649555594 143604046 928617126 762043556 203903083 45225798 813894046 733345688 400570465 98878053 459131407 3787211 478776140 104924021 392288087 403731471 678844577 802685942 137583267 699920687 684593388 768194715 566585721 753397863 334855240 264522697 335692335 982856680 676793065 212835355 505777265 469749078 569306514 154501344 754085823 323313225 119371807 340990107 613119468 457196751 179099645 408141698 554103200 655423976 655218861 560664577 65539287 962995721 298732613 857934132 362423648 784118170 537385454 607275888 56276319 492349816 7512167 604604090 629545932 228036980 505772160 50245966 76703474 641468625 718243744 577750554 620335856 417693386 671122496 619277120 962510907 158012682 76014702 548048536 854814746 941130802 552669259 707882027 828691241 470312534 67334797 480261305 673293783 591713152 542309630 910409268 905059560 447041068 226411259 971352131 876314099 473391050 941036533 873315008 654324196 14070080 166998516 56705594 151155068 844267877 846878223 254544500 708718028 208814983 383839477 82671844 246802110 644399078 584468327 144695605 737846156 96334903 484973755 745562053 430505287 930649633 333931355 86997032 184168273 292298179 562976580 877466019 258884579 6381100 946917512 587874737 3491464 846692834 735974348 918464642 108460192 993956700 604727498 752920951 676504030 549447560 605664464 91280807 955324619 990929990 669731136 430207070 604625217 532078826 556506126 448405912 571324144 809809086 990637125 917870730 944080860 387704189 883162754 887311386 399014620 813163482 971528567 283518818 515137053 527769079 817093226 87142961 992235934 540228590 624551347 224877449 753036210 604950092 260390721 987670562 590081409 255061137 458790166 302941926 784671622 700381105 358018503 20582259 470985234 271181462 787702013 314645148 649378248 731370139 973582838 376751336 125021727 944409106 233213956 402469650 909669347 248070848 547748621 397554311 124348341 233748572 770508297 616539115 629626502 465760019 210124680 778796436 819645472 14873607 873187881 674232333 437090205 434218443 978943780 741599893 87511022 775200489 556592833 807586718 241812053 982109276 904301279 753369934 975520491 948639254 97994606 938303489 327222043 9394555 818446069 147239109 72514597 578027492 968103693 388451804 840832924 436690718 890550499 69111102 405636072 278644200 751729594 730053908 786280645 758517880 899231079 117005374 876953026 863589623 742659795 725576910 325383363 124266496 951435389 196721291 367521920 34075941 159034101 145044335 238033668 333759338 961375586 390563881 543703086 459263432 237027325 61443228 581515315 701626795 807649940 223682654 982594074 830949749 290440968 19924794 302430270 177992441 630469583 223562671 333212880 379891200 733694579 802091374 680146515 898451656 530300944 843289055 289696286 530597503 786422234 242357917 166932702 931935180 738470293 787223029 44324625 42530631 182258203 945097580 670621579 221696508 863590874 502692918 387740661 147617773 272530259 894379967 994092361 208729741 889088412 384045094 289248344 626730821 64352479 61702333 397579844 802006514 817021145 327284363 626240774 476717413 410611036 323209418 213233641 321644002 374654157 924958057 12247565 445922722 263123622 419394442 998848229 132113233 744374261 760263173 405588665 18103440 569216988 58162660 382583589 402692724 846997007 771230949 985957784 31675909 793531225 171760635 982817750 90090688 546992151 79197133 134565495 942340886 526565563 275077942 815892325 762435307 90646090 302739395 273018978 417089559 868313311 782181432 601499520 403239144 248735270 932665612 467096487 304671902 150042081 162579688 929242386 287867374 29399655 692212011 584000466 34520960 207730464 626878057 641270858 820450417 805817098 783128295 83710385 305713362 633411895 766561057 467446931 657866790 116625741 329898565 566882128 437027816 749744644 476586165 791598748 52419587 827039660 708529289 784762877 125202776 683731620 754582539 805856336 117378108 691078116 308993593 252262981 87896311 891412852 871032134 395921118 254913094 59474162 459320601 827991028 335436761 672754193 504226764 130866354 771171542 244619540 812766254 414444056 346909780 509148503 363617346 183926649 767389153 860476871 861283262 51161853 902201853 167061348 568130189 252011552 965403804 699143110 366007117 404294193 785293736 173053845 458834898 72949460 448901501 119094544 287254433 335455361 277004652 183455879 789570678 477148418 116450872 728574689 279516862 93541369 792030363 585717783 978196510 475925848 531184066 519024567 353528810 420394470 945126861 971937122 43622830 44527553 601935441 993669966 877571497 22993111 865575125 300056772 820911949 655252331 38892888 630903971 792732609 145368727 671483593 670047707 145263199 317231300 150240654 189571059 712953142 810419251 953189886 352209797 328428936 742605687 824938727 81311932 371502669 145752569 620522504 804490716 860005039 275416179 172601496 176101819 888544396 836172662 81294782 437079616 42744 651908580 745454870 251614955 920754360 902695798 436023090 143473485 951940807 145103159 182729751 291724171 228176597 192103942 1185212 954357983 646053827 813406489 839720078 392175639 338452008 550626421 103671279 391802900 448174287 220837750 318684850 109971533 48191799 155866958 623817633 84084041 858237457 397469054 226094584 337819432 178298310 210144350 577982951 82445339 315193583 264202139 173436691 238837992 696299227 771243699 407582997 490440039 550591500 881653627 938140153 762800903 613460154 787291802 653282497 729941322 222978894 125085195 492071904 613858884 265397992 500111775 516186048 255150368 225955291 671201656 234506556 982182043 721372203 298214544 649357350 800345479 546588182 486294320 773032898 948357962 313041032 694501753 969563465 75747932 669632421 845270494 61122664 878125772 45048131 391727016 928976830 32512188 532918125 268991345 620014945 982278368 251790049 131259305 248852314 82420996 295075731 76215061 292046372 957129859 188652840 366254922 321703217 887443152 71325564 482044726 18984293 853535217 831071004 311951256 575948185 698568958 262757837 302197123 130769689 301979815 211114243 48425183 760393767 592733612 330825323 867504872 395980406 233306978 438776417 983270061 876071855 292895285 978731130 864799122 977139695 325917216 422772220 968088527 881234503 105972534 599233633 999920878 293021499 562760221 819461592 490465872 16023364 547990670 698110916 436735913 874725198 869869015 581164859 869825920 4902714 951639385 198883208 685855664 678063709 104927497 23240361 629674986 568169983 184780787 393149905 680299569 47491550 982275250 609468903 949028700 617856168 128823290 881175558 337887127 340368516 612018959 415167995 628243170 631975818 910552139 450231498 213534097 461631558 238416284 792405290 265681610 561969721 501336323 700238852 499951882 525540440 668419862 651369719 755612832 667264907 757487486 22556887 909128241 864175407 810741114 198325290 544069426 369966485 868784731 202123178 790998129 502598273 523747846 963928261 768744077 476910507 363368821 626335264 269954681 959729473 203718454 981295632 822967805 425800803 126538218 927676191 193407029 658152358 382563015 924123789 866976272 554083730 228205591 441756877 552798930 533424420 395632567 68145155 606855826 714039885 342878617 960708749 463249597 63460976 823512130 10357623 144279697 332162792 745211724 119916805 719575459 715004800 945275365 429036845 604896858 513814265 304366927 340611610 758163569 633735 148724062 740906666 611199865 230355284 508700413 736219377 159328084 986045180 853271209 425983668 363199163 109907984 51311348 283421679 541327802 719467411 385409284 299205968 885023279 580892800 245078289 57194681 964725838 83667521 385017066 664436674 891629343 495113017 975463537 469534772 945303294 438470972 30309914 829134991 347207195 928316434 4188016 863417477 480137464 459365368 689193873 33396093 293246702 114443294 775529389 243802897 430047400 781999401 62782858 70963600 668038309 954531251 863171075 479777917 455684026 552988870 765983108 803884301 733584782 534603877 837834384 387240621 331948317 662534148 215971900 358777723 15463222 574994187 586673841 938232520 441237757 741453654 260980653 441105308 1601129 772099511 684798722 316354354 151743175 838306419 519006486 82700663 671549749 2333633 688994658 31851407 506226472 138142799 800735475 53737553 826833127 624926140 249594604 898650822 302302733 809119519 885787906 332724909 158657035 215817599 934054910 741023482 391572131 577752152 21430847 888650835 653273710 368821788 342749237 806347666 577224023 41600688 253200103 828357702 473750302 617286635 103518318 597653297 659947991 530156570 815871608 531159243 727136360 11502719 436335814 771305405 763234062 489588173 74431918 89241960 956560344 908547246 297363097 305530460 577656107 366031933 544212102 566169825 559380540 787323020 38125190 683053937 328620953 799167264 99895358 545409339 65817505 25687920 380860008 628303010 529912071 111306601 855248210 610736060 90216275 244564461 459259741 541344980 665541472 265602383 501204863 509456617 620624351 443360728 631378370 248581165 162343891 642859590 618799555 517058694 883962132 766575688 467742515 105068560 682235084 77522179 606958682 329713560 832679420 148246416 580418703 80271139 569898488 728267643 318912705 810704997 135574247 888624453 193855985 913327435 165753924 484719332 443748277 958498418 750919008 560369214 805076151 967510957 774783453 87695793 141444916 995270274 438168628 925969550 617390974 388221102 205038128 358376345 93558906 311500445 535286641 924412299 435994147 350836722 389509099 192889232 747258885 549018629 81691236 409696202 531244482 795787360 286597369 253677516 48936849 948240194 139288985 359672607 623167674 694483996 304124552 639966656 687964699 319154710 482595550 125725856 793098406 161504907 902779654 620206627 687933921 916951944 565876031 958787746 789652068 877288017 634488350 339768041 714255455 530634205 445041418 370148537 107075089 582054741 593412287 865431367 815221330 323696793 876514764 460130235 157670666 754784442 58990357 984023986 781636023 277577345 762209361 261477821 178445803 559157991 367475341 510240224 447116748 307525531 450268327 65109011 837569683 787956607 402751443 802409669 366342413 638258987 225514010 676281172 504376349 90298217 960062166 522659477 829093176 650381239 700214072 318418771 742336231 457928 631981762 279364808 301178697 738500355 692522445 807566629 351212174 536879875 243695109 3944976 662556029 896718357 699091687 157916449 479547887 870813373 459455050 461284452 612133201 788450609 169275603 981668570 395533094 894051804 610227327 258330359 112747395 436854749 372869405 432992037 490113938 723927429 68805841 822448192 931532815 616415453 490034835 224151065 873828302 753882141 177487534 288071667 276315699 345299510 529731393 136693001 747738552 838538058 288149185 13893894 334711403 353551150 541113973 290573963 896384621 177905135 124053753 24974252 815358068 640193610 459376828 28015219 827805257 406183986 676427906 950758748 158762827 654769485 894116834 104613848 41724139 959901560 712315336 960370890 406347566 422749503 305981685 651891980 773204782 593588838 145560698 218856427 6461337 768009315 496373313 727056807 838363440 412705504 303477636 296180725 200383818 274503742 204010836 532710013 323558990 786170893 885182227 544336219 560547900 493432213 766262010 491674018 873303845 400907857 273243796 291955668 582202798 52200559 282590017 614274155 848884626 33498449 217299124 340331604 407833629 204611598 31660917 662044015 856245937 905736689 843236704 969976080 462041925 546992377 654773797 575319169 351685857 423080024 329296838 521279870 730289699 747595509 972257051 125715639 942646205 36791786 66776145 372791377 775886068 126686982 778561383 766890597 860443683 199339339 38403760 676529024 735706934 55162225 669825363 163369250 76381743 302077026 128411086 349641279 642704805 340840380 243887215 76487105 469418304 661182034 74767834 418224899 288585790 258122923 367399302 471070807 165509617 282710401 535978559 153518978 481798719 564629572 380588709 43170363 205520929 26792853 269729196 591054511 747281956 748925899 468521755 497645568 74283243 343267185 439016973 958217409 134824874 126215622 867839346 919637372 866591917 137895739 145213583 226003244 381321679 966478841 997734778 864313283 206904068 930301529 860794271 700905125 104318671 521088361 263974974 349517611 693392588 125219182 626467562 39912738 84463656 236320348 660888075 945181001 398048803 40562272 262166877 304190422 292819605 492853335 533266543 268524274 208822887 957107284 794938149 134926136 612197397 761037854 779764279 299801146 30874675 305119663 736755632 369826556 650891749 642698166 748889455 558522999 935154533 403084310 476171177 112953880 466576000 232487525 849117541 761624638 515408153 727060590 656950526 65391807 288709541 511805103 285751461 762154851 616252846 62559452 383979741 581059176 564920401 799736922 673061629 558388477 394551999 318011589 226617778 338624455 639637183 409082474 486609786 845344094 323220267 621971661 871828777 521093329 530250862 117076773 24455272 943174174 416979725 656084187 277653041 720003259 206990363 513278479 71724885 213786128 171088834 168036883 896433398 45731834 65963457 648339437 444332813 648292682 276812265 646653145 448073445 841960004 464332959 633048261 577093022 558287137 736052574 797838036 379465387 762956941 972434738 611982300 432664660 673602601 183995709 914108648 732610613 96220938 788185397 446879670 707046845 274658360 312438756 498025273 466305200 372678960 542838695 677515288 204910502 868416099 792937200 652244782 140963465 504592309 864842437 812544008 603968283 972784382 817766718 458551658 646926190 807032972 375214602 281605066 541303402 198538655 487005419 858856403 592365642 466665196 193486389 255412964 673518367 643092763 543302483 454561679 839482699 706749257 374840130 135714842 304974344 964790151 924266772 801788673 749993951 435034969 503601263 984567666 536974641 988131895 382756876 610981839 600871602 247773199 702537784 315144240 467391976 163420609 6869846 817093342 84159920 988971938 4728410 421017817 683422394 328703482 5895503 722770003 315679752 556749702 337796051 522148147 70496627 977876470 199062 643530132 41654822 390008944 40154335 702323267 233371425 37235211 226488070 714113860 941133239 553578581 617062651 157020237 368930832 301882318 934971326 716767049 209162664 840872555 787454181 772247254 639954382 616236051 183502105 222134471 755152422 988451109 919547544 38091940 228651304 884391665 420311477 200614949 581939358 571625530 607607636 215728571 284023850 265715131 353266031 195403015 622132158 767645854 885881235 364481377 397113377 929475334 443916131 781790802 267638641 629152903 7423252 16029210 161980316 809753768 114554352 842639915 360356581 787467624 279320275 611561899 48799845 715474870 985111217 205346806 773872264 943088632 948923662 451584283 914334604 510056069 558339204 469078618 592494085 70502443 836568897 316973740 213485404 677244074 757209478 137955643 606781003 526239542 932945449 674906085 405268322 981342969 471411988 355375037 732371846 748665742 688845251 47627146 582893165 192487304 218635210 948099143 914619683 75585769 695428429 495074209 382606471 664112555 875320711 587178108 176432590 115976763 879511363 70735215 46712064 628722168 935394662 282656067 109728118 963581881 601098083 248713591 520969314 166035012 748215237 979347647 918906695 221995736 956022953 3374465 132169853 590882724 269553217 962308182 842533807 768614477 350351186 934810767 178953820 518058604 767806902 353367214 763656281 594352142 398120668 546014440 686080077 930878002 575445571 491350954 368524851 757694286 789968386 817070097 248158684 159332299 110087491 406567024 289346922 82832516 111303363 858318542 361915862 190112587 432331604 717616485 930998124 182183781 591432284 244300069 288985162 365634568 322502228 578971694 535427300 242624740 730935625 587760218 925735555 399922327 132613469 111319984 68585409 399498039 820951879 420707570 36679438 77893837 36242639 514702352 248010543 613444564 761441107 329008819 958576057 297783742 914543686 374774963 918353818 121503087 974558635 612368033 543964049 162164672 96162462 485739582 254503601 388075517 897031627 108538626 589818594 861387368 853915637 644537494 81820512 315043508 870263921 4117338 249200442 847030922 637999016 860976352 289684436 582407687 251330969 404829807 263652197 701069884 538521684 609834881 758027130 225535917 32401536 48352837 412667761 587058387 897147861 698538014 420844799 58563226 968604579 241725985 247567531 627898595 165372234 445469083 640485968 294051075 55661248 42140297 320210847 891553859 58752782 29947423 348002971 321006174 371476179 7797058 146834971 283816453 207674559 298253581 133906507 665654110 225704985 634027856 127377195 271736961 223807290 462221068 392673038 200383994 320925200 147282168 686176541 522579274 210492572 673784319 590597074 461691238 784104820 617292736 831548797 87559990 299967042 769171213 814833347 863517719 410751043 362523756 675165977 723211354 282427592 7967897 668702029 994035139 119364024 673095938 451634686 347515402 740519948 328815178 65836063 964533597 929607762 988974278 447537016 657814748 397799212 707730179 891489573 867412764 268128718 391031870 943149589 108605093 357810306 669607658 924805516 218546804 864488231 166117166 194658721 963171962 363214766 326155108 461029825 403631130 297561756 283268764 475115306 543367855 616044428 30598935 530575729 534083588 160790954 639227596 21190909 533084890 748900920 847065574 697783689 689931622 602636557 67046211 282679974 8096207 678863120 567630071 54601782 952513716 461015234 314870983 180836082 110466981 156317874 765384367 527867622 729321893 919168006 825665372 400966640 953461679 620240120 801524915 1556548 985315118 19585879 731664456 439817962 533824131 55533314 330545128 39433278 182784898 457239665 57009680 630583408 674535925 210278188 915401843 626625026 863521816 179771985 51567223 514396237 277498651 695544082 810473400 352183292 260160932 714835765 156735108 287340430 919789642 265358738 150264414 447520728 715573787 203591833 487078524 947644545 510115606 374362313 59322953 119710341 573808306 703205178 553388515 286057139 14393942 412282900 91888286 769532975 268372958 748783894 103740287 812611824 523613725 713646608 475445697 844528707 649531221 835860841 17873236 593104710 31406528 185682585 756500825 538505070 113990155 976542896 990144679 106918657 833853398 272009422 504476233 19355037 675052597 249512105 60515326 271235759 912932914 182697226 445127352 890787837 956339016 447646287 696298781 19545117 498434537 529252075 464866313 191660795 981688314 690991074 767318282 780176471 454784338 37188430 484714723 864811589 564206142 767456476 95227402 160807339 619204608 681099855 120378665 884600006 998281547 426665468 823234464 622740389 65760457 268957517 901221377 57286316 132389269 833687359 538540179 397290771 727845313 753031395 210773457 952815461 913618642 861563360 370246376 904422914 939074111 286632175 184961084 103876509 335634933 844828766 978476003 659009982 283227862 659907214 622506536 151345984 289573173 475951733 446848010 260224724 360264539 753949213 897534906 14125949 274558470 166519587 27185953 506674450 502582501 210778425 723983959 522364096 129940765 713254564 159288365 32099717 751458759 642401470 101656740 194051766 40554607 24856181 853219700 41195130 67327895 708175050 950076550 568379980 579427634 794053972 896113786 553309565 67522857 416197307 762109218 529083823 497783769 188429629 328912389 757685083 483289235 452523308 621368029 453271116 720985115 519707501 616135193 307095074 897548074 212995578 14514012 16980689 121327852 729470049 857700348 768195359 958231427 502660676 524269956 141646633 672179330 47505879 265553458 504678110 863380850 951476837 175923578 166123650 341363792 109357260 123612289 36460333 710229005 646104060 12418722 247856458 336702733 900437883 506856429 630702872 76313513 162936292 866980259 961862956 131526317 737353571 875021499 664703725 92837338 681767995 866195041 266539287 761938533 527267136 957700721 763227193 261101430 659603037 207634432 45965111 822765226 321895184 925540820 39698376 757604498 503257833 525020391 256124664 575289138 629911055 571621096 990695336 90896515 116507066 327781049 11870473 557900529 305241274 735430386 735919397 856049117 971574766 409781853 708322646 496875036 68245198 928864888 920754381 695707766 738344419 226572278 19112204 94920744 761069385 177896766 161346668 783941474 671242547 548743914 997716120 711964618 283937895 712736842 994365712 723709176 208666302 503712735 323475368 777917176 578779558 42292192 115241734 369090763 655916192 369522872 864584999 914227941 402364354 142764421 945718746 897887152 436630581 636488347 330906435 155360264 919444152 598069247 477819482 671344574 298570779 155173869 635107690 952918038 840262597 7957843 708588690 680824904 453522479 601220691 913344583 556016642 929846631 739248325 870371792 363168228 786765198 879080114 299444169 475969539 105200986 601157338 610089121 809008742 688621717 63936815 620711195 82899340 653119132 868178776 85422289 694435557 978908384 20010287 935206572 888701780 409311592 348372291 963285869 839486900 394838862 200506711 487446056 225321295 891070269 734614241 166139588 58268776 754351098 982542732 226539132 147532979 728513240 551328182 562747488 638352856 726689858 727145203 585458645 407501299 405323317 54751880 943357713 831059479 819377347 750448625 816978848 702986438 879083153 557151579 74881762 840291963 220211545 300059178 433454730 189918240 464527977 430880117 321271072 330283416 353821987 295185029 48373888 3828790 566388091 762864986 296563802 249065284 460303996 664179494 574793904 425912446 997349059 88647887 297628250 916603540 335633666 715396977 28620165 226434475 267463295 752052442 1532464 435621341 337146258 101748237 203642029 531696052 845650474 757667776 631058982 741055667 37801545 108315869 94493462 313997773 187292291 420596996 146484172 520898028 203490435 326872840 935553772 983095915 498432903 715922286 74193901 893832093 290592991 63713009 295663003 160517956 981150833 230070016 240425622 472307994 100384568 916156990 903241682 96536907 101317057 601196290 713071894 660314873 595580588 689679317 585956221 440888503 256571697 599935478 947462647 469816079 905481112 678829529 649087433 931584764 660851136 262176675 462274825 566796912 828123545 209745840 727280931 530913488 767564714 8302862 78525271 823976819 454258059 851273215 213565752 432271910 75134572 637787771 921265966 85110698 989583245 624525484 867041013 491643957 37757124 411503 671304732 621282285 46611706 555257562 928525959 103329136 330027182 628611248 352698094 331533903 958058608 396318447 910168923 486191502 74691431 620621379 949645232 349611046 50497996 88103056 444662815 184016260 174605677 402975596 915865008 587902471 993888299 695401633 431477950 197597061 29169276 247172784 240367482 105763271 718607849 969461577 555110503 194177800 283667345 690611157 116132572 329494650 269279909 234496492 338948485 377297089 407032554 477157343 995224291 555026037 949335354 985453359 738338247 987822757 415606787 515493651 602016731 249585487 62327750 93061879 434059801 443733993 457693081 92445432 209592145 25989083 897409958 179214440 234721448 105120514 438785450 95235152 666634260 364137519 429793143 867049449 255750881 900027302 246766962 355460898 747111983 997652384 537859349 54552862 776137073 701210825 416538990 440873139 606281967 203540162 375567262 986227947 125431877 868685472 777689948 702855046 914954466 7713643 641570160 136968055 345778314 713177760 919528504 298557283 909649877 757885616 880229414 243997221 740465837 890088831 138831935 47425869 666636500 22437605 771344029 488962972 903417436 150089520 931818223 615396745 863971372 728945569 129814260 328458687 959663234 771116778 136152324 977492893 654434668 697135542 256004231 276320692 144519501 100557601 219012219 232994381 545858911 214490940 238404594 515648481 890481195 165470091 96578705 187590558 503803410 550468486 351310099 683944425 135313352 356273947 900253124 44889302 640380115 468228906 184377095 16339122 859711504 397563400 651963857 483030138 453515823 856403965 880871979 634121825 237516850 442149830 632910259 26466894 748754418 306597139 802407451 332248155 280326810 766828298 848028073 541830999 226847018 751608002 6634422 132131653 811996917 829153737 539850031 584440283 614668323 257044127 758932247 492379908 768198192 298669369 994645763 257164639 379946603 611261311 868337052 559498941 198527096 659811277 261002529 367846566 684061903 332078454 221506530 592854229 66986298 498869052 990860486 35112888 119600475 672830426 712282054 778093297 439834915 441889915 355520624 920146391 879388508 656270655 262458981 508204022 649538593 349169085 340029915 309568906 158877537 156065660 743855131 896833544 325429599 568675960 840285700 711497878 146649908 107113892 88110214 790174350 404351820 416879970 78384424 760280575 452231141 999730188 250320003 236706348 845588371 48795759 463464133 346265099 115363263 151387211 30289455 892252358 260369187 872423124 263554455 410273854 758490191 27659572 986973927 650486147 725889064 311788294 752546716 568297821 505077347 7533277 938904904 13739719 238505486 322921147 140290064 515909486 383678472 305536666 713072430 405913654 809080196 757423335 479876976 715324853 16341130 135206145 567008695 738098870 795839094 675463103 305453433 610198712 75042423 899264487 786526016 101494893 605482001 217471160 436863785 454992955 789239708 846244449 772387174 70570686 797489346 331305607 838526652 424611652 357004037 148260547 198814470 833334863 690724919 150054690 105038256 460537879 427723007 716763811 810174524 281229062 340969307 499239869 374152897 429056058 867691801 843805398 202874471 883872262 658870876 582266060 151920620 414796401 539400221 805506416 159074850 127105973 901206184 641062407 927185006 891497665 81663515 279038408 761144139 253708728 65702634 345174112 231671493 911673968 982719582 244281456 571781375 353702644 510918929 838535182 322004653 822098435 539057011 124792640 172883866 44951438 616746568 559933572 458416420 801938749 493427496 644587851 324872891 716276459 321028350 555784313 144152678 981741862 694760586 643762919 679547709 551463856 575659743 370208738 108420592 131578881 499893733 504539049 642580286 780957634 49074904 296693746 98904191 687091539 290580679 868205669 491677723 451914310 96775958 738298144 167274513 483196897 511141884 285239601 870801009 164301216 955018502 121410847 340765154 615265714 737293714 157261154 222877213 757934455 907558229 267302630 924554351 917498888 9801430 334708109 333577787 479747247 910522352 560415913 877288822 456259434 682551380 988054918 848354602 72677228 301793797 803190238 542148083 830933917 862031834 691247203 106137733 295881493 167956479 80685880 238780964 463441317 95757940 685342840 969623850 413452366 356434316 746848942 713739140 272722887 373073520 737372507 975358262 561483003 430486938 636276 195211475 118764425 514081114 214991329 276556805 892519491 535112788 381638656 895421963 400083375 74285056 883550751 509332022 423198857 990660905 316008453 894783083 698445375 958809711 522505066 273415588 870074227 498736325 606925946 71298159 482334845 535746547 657167446 628907885 65295335 669633813 791034258 967747028 661402863 428316442 784759480 525823982 659261448 353969990 209268932 608723864 286952793 981764528 403706791 144613060 890821948 730882501 959658693 721376247 985478848 867941571 644846966 146111691 493386280 334473791 872209800 135424622 925012330 823757471 871629243 851284514 405164721 889527713 860232260 144685499 442404572 618571987 682827595 17743396 229540348 403905048 658946413 111878106 240374234 989130281 749617722 928856943 738104942 346469649 99983544 268262920 447254121 680172208 28374494 404232160 540103084 821356346 360141082 738607299 594995663 877081013 107103436 610411668 494353051 745176190 953953992 661067207 297378448 727002565 569062104 796693991 575817056 953652236 183559992 293900305 85897842 548462764 879663896 712558967 980759392 852291663 38353182 977093087 295857273 818172279 560871393 67558946 365897536 147103990 502275695 673266861 937100011 629675124 428531912 855816195 801164005 194655981 802355808 185873208 851353420 941220144 884664993 796027000 900949363 163684961 829602151 77910910 617290337 589190775 868085122 932664861 967741265 148658879 455120183 72500411 367587888 183246423 650033343 289544913 301493282 407303860 206924999 699463532 504251902 274363420 727768815 383714223 364301517 706719277 513303627 762530127 220683855 968281172 133574117 103359253 860331894 790432855 404567352 160235872 869479144 504815308 843279031 218087584 832147841 192024479 79653956 488402396 34725583 804980368 256462265 326267693 576071572 759609778 580471651 988896321 328208968 366297582 556571777 372484825 603370901 120712062 759286217 56537931 921050329 791147122 460337124 137881856 532751527 306589486 330688494 817022711 985950022 222480106 564235767 976261185 819484976 619434545 993992580 902754435 434858389 244122467 11900942 247186551 173781718 219709747 719213441 69345899 536426250 754701097 100298431 488496320 874463868 763183136 920026651 501556332 507606570 627608777 708847071 674913145 851016264 718921255 762627270 812666243 792683707 45977617 613133442 401191486 942534047 203653044 446595127 303492590 538417602 688447502 315492094 674519022 657112870 116518004 436704355 737485098 147904387 249152781 371255016 270330532 295722690 155046740 674323072 318342642 963841923 176646297 821853460 218139582 873803160 703638145 955830018 631553093 113276552 73626498 67288984 337788889 379528205 817768296 855000989 704219487 371980950 814524371 393267145 856748754 273182662 718817462 24853321 723417534 325179635 993028314 317072956 620573637 386390952 520181337 849199160 48309022 317627427 262804259 200690373 829236497 815878615 725195132 759019488 751363708 284131307 966849660 181653114 255893073 434530746 575768718 236630263 955406357 822472529 698572785 619463600 925634147 621340661 14038842 246725489 729130343 569693338 379561936 944148475 859809124 124967532 699574895 624893059 714671919 178315082 187105702 142445105 450400945 959588934 605829209 428767395 604837736 390630950 374076991 904992871 74822886 130543590 581128804 294908804 809273169 563992372 248583593 350955506 288784354 825734387 729905471 917152797 527199078 355227577 599131952 526054246 733028032 966690384 20281046 159836834 380110181 358809144 861326690 581131929 548965342 426264612 744395862 765260424 422541385 609991801 253106699 93575328 421824217 914701266 638624812 740995716 10894930 962051454 625275961 563120079 431413390 277340672 995101702 21177484 855522554 391058318 1539129 976757180 849586457 301211795 392446159 306633172 297370368 688050734 553912727 919863100 279643096 761111217 846193333 193220305 931297888 153976354 125682977 666992739 851622249 656306877 637157158 549233464 753565272 916935536 869149923 24424583 473722279 526627421 628771533 138894334 224073059 371995484 452878891 574536765 513646511 271518326 765187481 644706649 28239681 71774315 885054342 856375642 609116640 150830381 486474421 836798652 965252332 507192419 983766720 631432946 705348054 742509543 366120080 938718942 45288099 185537096 541095654 967556955 688229997 370260297 807212246 279471028 366427106 81248864 858106951 669953065 58692547 865842488 738239604 27842673 477546854 725601839 297218157 750910003 998308661 138671833 465469335 726139276 969369901 308047483 170199080 224960396 139677536 475861648 259468716 660385976 368111219 71963464 899597699 343846794 716999201 694056452 103594848 731118828 540934070 14825947 982203851 169024705 739730580 51131929 772573344 447513693 833772209 387048634 278912398 1001223 652612375 425963763 677408922 827083902 227548772 653325226 935777945 562353521 796232007 185059321 21675449 955981830 730068745 452895151 131897848 769781332 318544385 390366158 758768043 919213800 351642143 780871438 803415545 717539652 471844706 755888217 936722270 108594267 212565090 811952461 397420073 890219287 462978759 277134525 549900541 972349140 53075407 784207664 177709908 145262050 990117068 17502049 840608247 727038982 454675876 589317309 850267527 890499321 265989456 3969000 856546040 202040552 615300701 842175800 144004624 233053938 566628206 43418936 867623405 688576941 300880311 886444327 955843452 297710498 852106628 92553079 222094339 782159308 983598768 115466318 182581144 574828061 754124590 155474440 540156839 213947386 243415428 240750003 129125743 811687610 502534987 991737233 544804486 949452842 231994288 656698778 508871505 270577932 537017334 98576375 432590733 264163219 347296242 209855880 651923145 375487464 140658318 738235487 41298665 858758313 487092294 825968195 481413797 319152997 24258990 93199150 257403399 128774945 519015914 97659343 425552625 669170390 711509812 273015817 315322261 127115760 122053977 969342322 915756795 882681040 23248444 272973781 894125950 403547979 976363602 410660273 109440335 44962602 947233061 737239735 769766129 148740264 945326546 419055695 865009595 235505399 191027082 137441812 259611225 494627003 533127188 350942291 845984588 154196621 450131017 782746769 504781669 680677753 31301271 218821634 144546894 486240640 92110207 104862738 287468801 29745687 471497240 833933536 51655246 659175078 855575177 41070014 10512730 682306827 635216530 537223603 975671323 281435668 231624708 681551353 127864285 378945544 60918084 742892159 208939455 143900447 229656012 73682535 239860023 301388293 704180906 33408137 562338442 493856859 583510272 55206383 416082773 357106486 167209090 978418775 514528519 148004766 384900091 740209844 360764260 254666000 928314824 517361069 192385283 529008637 296490587 478881309 392680401 388193353 42334393 804058513 584084365 541137869 141167357 578442957 598073417 483670229 862848723 742354504 336592623 12782754 244921341 172956331 702535610 604280297 385199314 118597461 312733369 485466962 681203386 735491290 31820367 555772922 355624627 971332479 331615670 524598769 520299471 37953472 223232375 605123261 932021172 727356107 326341107 535551957 213503770 422342914 468515293 275674407 365241425 587214461 786869438 178359187 648300472 535539590 539823472 746963822 742236231 521214235 609602724 251016960 707238918 569751407 748203868 456726278 218664596 745259625 384250225 962966320 434672033 551203875 172921358 918656164 995905396 975207276 955110451 743514746 254178149 520643143 161310515 522746429 860577380 948844650 532591926 612204656 212449649 224165824 63304632 879545095 281179681 518083815 697690632 526492138 700619040 251957171 571494858 709861750 7995049 900511145 839467893 287792891 408885520 938826885 408824534 351633727 211269944 693877428 891903884 7293689 768623389 599866843 879995785 188333911 305658444 548180302 73470359 821040248 1824358 248807577 620134353 273361907 63284129 186908155 938114597 947316047 512029510 970751206 129711321 925118089 404766260 563024513 512681731 65652369 326805852 18261542 381953296 286142412 902605379 270909412 271784254 817910419 410626947 496626941 854630945 531175859 861111114 402370665 53870882 730194668 189704665 589784914 662321915 158955890 415826438 810047894 987333692 378901103 599037370 428677193 947612106 409329535 824886900 214325808 329179994 515750194 533179845 849028166 876212730 785240973 947195346 944391227 889486473 907324553 155873749 703487216 244714042 796492435 708680860 907443964 927592725 785955595 143820553 462014762 551802998 103399109 202328208 109122809 734984588 863298698 964784572 434602266 353996763 627972504 893902506 555914742 572678587 560307230 111046028 165549606 619913942 13216705 751124775 644813561 880697006 96420890 467957589 177890033 482906901 664040758 920359812 27651654 766982322 875039252 697603382 201714529 16317827 97172267 871619711 659481442 7002454 896080609 410611850 313257627 787907662 550039573 218347540 114833683 73002340 263301782 197422063 202849541 883997924 588058025 89101697 614881630 644073708 393662087 222145858 872954434 961929712 868508380 892729154 238934407 168450873 287742794 49916832 750303544 596251489 903758820 12485396 600257043 577884888 862001331 955614054 92733452 186791522 129368117 928407540 208087752 499826583 870309336 190806576 229408803 468349282 346386052 966873632 735866026 772303491 670738190 711103709 45341218 783214093 722884294 179935508 793581567 235432424 576542698 390021512 51207150 470794576 418895920 587734926 893068875 303460180 822867264 308916111 279783083 586162520 549479224 941296009 849206356 86066067 953783590 906579343 627160768 660377490 146662801 904253508 278463006 169054387 873304817 792829796 868010449 534794923 133854770 207937596 998447343 605024769 563548982 469199917 489456323 903277200 701100368 4355373 847071051 349171721 762785737 739963973 455877050 423410798 334623838 152597012 676511991 501007001 476997056 469953866 260428829 616332979 602490387 948785454 688031481 89106109 985574767 432975385 467220111 170124554 144756322 178278905 679061398 215814339 55385709 519182031 102597367 713616482 482168962 11944753 588268113 141470775 810200461 284453065 468597880 358004966 960385256 419737811 785253874 439015911 748908772 631664803 980162937 109274117 216937799 913581597 970577019 141710304 405862345 76951099 679001501 114070635 76613782 266827659 438263092 383337838 555058895 680052398 740387274 337686021 230843145 403469019 868987039 242387743 219805644 60835929 42757158 714499584 778830869 343885064 910173827 76581055 379032020 915217625 918449172 66151625 330973295 560312913 898598373 905592668 767457085 882215691 113271354 783498253 496221708 97902131 105249033 44249922 131718044 352841995 542050941 605274809 314115106 612703081 437157748 270179839 853397446 550678583 230606338 808319226 789401893 363377650 229020140 773106784 102140879 452601644 756524846 351039549 572340426 723454219 236784246 306227313 162918669 285315015 284221350 217812272 975736838 292204847 184620630 141815168 228040213 937465637 278858319 189940158 960857358 326115869 526716945 843811353 61753019 815133090 234455374 917829398 980155736 115013330 454116205 671672842 432145429 606995165 190738440 536315811 114020760 726483849 407633262 421252192 125237880 659299249 869362465 789065492 117111747 391683521 670307929 803798375 854465913 575797308 657537664 261324373 878383374 750080055 220863413 214659245 816287724 80805339 50928457 221762451 246892527 507899622 5269572 983738110 577795559 263733035 755235297 965797435 253271065 422662925 192606221 278353000 247133887 980796936 820332524 193745658 207133315 152280873 993554516 794233911 872038664 584096145 643270737 484272061 140761953 366474997 107267999 749094649 350193816 475365921 633739059 565193137 890165801 445097840 458066355 57204859 907030148 917304150 451836409 471694147 945471374 655536855 982542740 675741641 732567840 942686733 461653318 280994336 745312647 954176165 773576583 505421617 556036098 681462370 847459072 732905270 150053192 17014681 642835218 517124671 565483007 94279604 258041421 211070128 510308166 661252527 650502905 740069313 241113900 626681502 79192976 923124221 791721270 414193701 82923841 89113027 326070493 935720702 475895919 130872264 159794701 853794679 939391792 980048787 398835112 112232945 185469391 198813696 940713473 212633954 807406923 69322174 954029410 430904788 663623638 603178961 652678790 800961252 851375958 27876368 299404575 689241668 177214439 646594472 489222225 679730233 111019094 212219287 773258549 231105053 884327080 287505714 290059095 918734046 795027601 939337375 349955897 898538365 984495614 739366236 724740814 977076113 743909260 279764662 724707839 688482241 823299342 26676307 858457386 305224781 382421002 763007657 170346398 915163014 79950397 920289156 68652064 60484690 624736275 314562180 926131560 178143913 115540271 591205276 93172901 486756378 488150761 932314517 476715509 459242055 32675019 257654921 411213038 858299236 947763987 188354152 158603032 144844476 571481397 770422 901332593 209912620 711387222 941979851 614025703 705385382 571963858 205023954 184260065 552911792 230826422 326712778 248777399 209963490 40329030 592987720 311498549 178633836 993316217 56942003 56035100 356915597 710163832 279496391 402098593 480109085 555715875 504486931 292943853 705144836 493696907 604505211 631313307 197019328 144084857 600627126 928166716 557710820 460351462 537612496 965276886 711635859 912740993 538160298 827152993 628077833 733300268 85702261 57823305 842591507 877070207 992782395 549642735 940878993 788475204 173088598 891255336 264623355 356881145 733796599 864740796 670607065 373785425 669989536 261125096 574505546 347994803 944542890 132576477 263761278 630638010 97457856 537712190 745963324 119254963 611835490 799474598 127251293 194704674 413998435 814185760 73621839 240528957 557322348 104439725 300271250 478089071 612420471 380337090 853743422 785101271 166317140 829914055 626891900 428089286 922286887 57265817 411020040 303131973 825703144 978858504 44796854 364499596 675234274 75215706 290414570 137513100 292503604 116220358 219706910 738135911 541160019 227619578 545398368 209096434 894407046 780494230 221639889 956036410 936127593 762659247 966298663 55633660 368989547 462699341 197783596 18999339 278085967 210311405 676027964 736782957 267910575 564505087 844189643 410721183 488369524 575171945 499730141 876141645 906668383 11190786 620789900 983227450 921894020 582310168 791418758 616227038 324024521 973967083 41976461 844043747 420488556 310041903 90384629 642886056 603472250 753652622 768750377 108797374 525816921 344596004 90109734 854717293 561972287 763220481 633454333 557216816 80261304 184946603 205367126 509161013 175519012 96261529 717477864 61976286 886726454 605882553 137397250 51445570 87535990 176294122 441499909 536666284 713595840 524972931 928935656 970890523 414163907 445791178 114988723 497746369 108815235 270407038 994222852 184484229 818257368 114398542 829477005 832148353 966434541 23170400 910470291 573646724 554546881 621829579 499677041 652109968 218317737 477265693 340196115 216003933 341178060 117207765 691694460 14182613 233994406 133476330 123695424 92614294 924890502 380764994 285271050 442739059 910879247 103181884 51763992 202070003 230312379 12705575 910576058 261840080 52896083 306534344 965950422 867939194 206779768 706246104 693095015 573893778 110730014 242496900 931789817 29646959 501771787 377188843 732516143 200234908 824504669 208141732 484769086 379814744 137986049 745612085 915440751 11105300 438955325 205228957 650525856 556640249 258023718 522242763 63308228 360839520 212383019 229819428 151490142 850297175 233325704 153058561 525730826 442052131 12090068 922621230 458675189 411397560 45292660 522956653 486708064 929604675 89989925 18781169 349717537 956203681 541010038 724441315 106234657 19216101 849435723 675206881 820779743 260018390 120810332 627887482 304111083 835605102 653009331 8338867 890167148 556689500 875297074 353843845 166259099 264082051 142158859 829460828 384137798 746679929 872161606 214339225 195822926 632452617 142176574 37347857 344298281 423453617 809868324 879867789 623186272 465237797 480038011 714974024 698103570 272672714 601465754 907244148 115564912 688602428 624675373 572960693 710462015 509549000 618712244 441087908 659845209 426924786 551014915 808194381 268916268 188130289 701774785 807687345 654704185 480457262 957003497 858501957 334506902 5419977 690915915 999627890 353838701 699438612 676651788 778911251 649953403 23426069 759002913 313174266 608705425 637568776 401749977 567360874 625687575 5846747 124046928 830661534 197204356 273572017 31626237 319030337 343237351 637339488 731255589 814951668 97660257 730898419 869664101 122569932 193343145 542001192 445261868 877535954 326272390 245300978 669893438 960353409 449549400 934571768 321811762 151258698 699512208 310606612 140729333 578753555 205513268 254535894 924083013 349711796 749424220 752593663 808251191 713812345 497066935 205950982 266205874 81968291 528461831 579334806 821995506 903415271 314167200 973517326 139431174 366194669 718595053 620633856 207020625 916741074 181907948 772258226 632206604 715597222 423977133 463871648 667986883 334595311 166008790 396772088 158527700 320251685 82726946 967630620 853937907 352956468 567721949 37116196 949810601 591323901 680943978 707657561 262448080 261115348 59903933 381884603 964027417 276949763 256789730 583813500 144063878 441059142 82977396 835967363 238147568 293384270 987444262 686766826 930379394 452453694 76292158 346883713 718079036 130255665 933518357 167078985 383992945 118278066 50217112 371590137 456853833 361624385 163996362 126223739 87963200 218260437 342676544 277936496 106797733 823083861 427287459 969958824 21388828 150767134 695448370 84728236 772397852 359010688 333975357 480431412 74951538 288404545 117898411 97015473 452375228 673087768 927633781 939869636 8674543 337390387 493949736 635534277 544460498 294661810 962391911 513420861 869655169 938716457 164008039 927021420 859793898 205221922 42634098 111016132 532310867 275258265 128499045 316051307 135686098 379188350 79085361 153348285 354796500 440753974 856817757 880179400 365893527 809524251 850903426 708608719 156752303 848808439 403459790 629241800 180278661 870712973 391363714 966803166 939294163 773832976 47724404 564021231 277304105 933401770 187715470 168478222 708173931 315282679 352804429 12237826 595515729 372815495 80614210 688331462 292226278 673750879 137544341 118172679 774066186 835801464 597017981 901256361 567469552 740453183 465789641 206381379 658611360 739283988 668229978 62751902 505027958 76329675 646433446 611382329 148333985 687864878 889978167 342854856 35645605 279016824 475344682 474124977 433619674 389501659 356399281 383836301 920269802 991661564 665588369 249878445 325335383 195416690 109988005 244816019 635156210 754911818 505471065 208425332 22947173 820574342 266492207 447324349 73502379 786730905 108150590 80028555 19414674 61736428 516390318 755656241 834334528 992292445 895215421 7551670 645248427 365906619 764220093 201808724 481550880 346461771 561368467 35022075 547752637 243649606 676684858 295245259 305231350 867654744 42116286 971555741 238444307 565990179 741757250 51682427 149492401 946259642 983770234 728646436 58010941 206682918 573823537 745341833 142382972 284957925 832733125 447587155 656533766 474104166 460584614 577433178 988854470 73155982 187983066 666895151 784555388 94043190 427602300 997492627 249491003 202396330 435818296 488276222 838632171 44545323 972243665 932719897 48506056 354068334 574109596 626391620 928598753 619894044 425081858 987918865 903670938 715072592 120369154 364578759 663419434 381961244 445106604 308095712 613974302 27116804 644231591 535885195 981506772 86451584 865618860 905378090 401753345 415266943 763810056 729310933 221412396 162704351 8804638 952783318 606959664 380238070 486060515 620698155 987191998 244994828 214925920 853762312 444849624 755887070 951507252 727579474 440022103 141728285 949382928 612910116 959337063 688285677 392934713 652229966 817404422 695279462 287812617 355665361 378405768 732803351 651315565 632878692 663649302 86421118 265726312 626324466 283723818 742007441 750056079 868352538 227329044 34856504 681618060 167856046 161482872 736058064 967851164 111902004 586564814 696564905 295920144 391076200 501076961 564859785 734373583 94997944 142226001 221700904 397689299 919644871 413571345 293944242 568818600 948742890 470440425 671596104 125491440 643852974 321034229 847960447 416892641 147534672 44952100 986231263 581883845 926970179 876082617 910024293 41320825 206778030 23188686 698333953 467500014 527552491 640120524 522551065 108897708 799718922 580968181 131546116 221415498 315377484 414779611 626705808 652369655 712866216 859545829 859888765 819547380 553782601 681231569 149126912 365166104 331033357 568233004 418139969 777842507 528713480 997580508 468130269 192134923 307335423 778112919 828232804 511738858 345459438 591477865 742056412 750852365 262548866 123041586 638447420 802006191 45171872 544419878 899180018 50562716 324669404 377006155 24821854 188838070 591895299 346871294 882691669 956839796 756145810 188356462 632592798 26844766 960534588 236089120 668760696 821442706 623693671 540192361 416023571 189399874 696618927 44844023 519253266 861025332 406847330 496532553 31181839 434626112 518442499 193452594 33459223 990101462 652290760 224776026 647498026 973131126 92321052 413231805 742163132 935678005 378824989 314474282 695545911 139199550 602758687 246866885 816831863 888222543 21831975 413938821 595858252 513632568 795403120 488056502 362756092 310282336 143624426 35377017 502076350 230616128 752451766 833729087 729450815 693128677 680197547 977334610 267701793 308214898 857228500 202529869 203485559 33105820 133922288 663748254 449828939 907210796 857161201 488797195 111502873 852971649 767738237 350955306 898395473 579660555 602734960 954174951 723315672 237142225 112475992 985838594 823544711 713151980 286679032 647027598 849668267 22182922 384868293 329928564 179198083 744359148 898923372 717673454 133449158 11247848 283379786 467040012 405174554 183070055 41001714 775849778 930178462 58574696 253214123 35118488 108645729 653285371 529775856 373558473 742181352 402218183 962126318 3399972 442840236 615366790 818172681 611469150 854617498 848263555 317014103 928774398 762279825 668196899 303070243 865550048 605701863 577931097 367913836 98223027 265765349 473143087 654352995 958703227 640068934 999705924 946119409 563791119 642954940 280478537 968656686 177227420 979881323 694795651 661715947 48556576 387282540 567007052 365697321 71807728 789572940 950084498 620978848 565518130 587625610 456752471 785783865 895716452 510665756 871421487 78864532 645636051 241760235 714869957 691112835 790755621 217830482 368947542 905562765 933483216 310446243 980882996 549948780 968008864 520423330 502336580 599968911 248584245 49867272 727748993 150345113 845428098 951666433 102234999 878789088 471730000 158293678 583886792 53394671 339263929 899724964 288948395 729904900 791173293 749797996 102754152 369738131 311767152 601351681 875456221 405546433 651155482 936150101 897631740 957818089 193807381 514180555 312573514 214042395 828596899 394598078 562726498 549068696 496162390 246945785 134720624 559201623 173207702 445352254 469701303 238416772 727412255 896134592 66957323 219887611 371193728 20997288 188849752 908549073 947079580 704396179 801181977 207910348 823990829 632546578 326043105 954287334 594579516 771991848 807628502 686160078 848559274 210907600 92008240 471836262 877466795 487181173 851798975 120569414 85463622 234871160 892494691 808577848 875050198 759304366 265402769 494010042 740991884 291359711 129360085 18735487 812312042 997966408 40074058 564409838 776723017 232282138 682507556 952762529 14803540 574395129 771618598 548360936 84636555 385266813 245516076 823139652 545437121 506183348 714593955 816614892 687096223 26303134 416669964 769578315 229047071 665546416 636942973 701593215 106129937 664066898 385603615 613383644 717064345 889822561 199045297 804208999 960919983 114382509 659268867 562320732 351516573 704412796 944034428 880195241 135602309 520482310 936532885 824922480 590927577 317411062 111251036 207854985 800728033 431308783 640772338 158030589 777879097 206525189 741393933 551805580 116485711 104951360 203821431 730129960 884816105 876198941 891475085 307338616 616614302 112424972 643159232 273322070 80235864 532170483 637516312 891766097 63447768 906313129 19225004 39403052 759105330 185100156 490287147 32764509 311122508 262551212 575688278 253875087 244172644 371581677 680244099 12555808 2652551 670557161 787967004 280858020 211814427 961993148 759226910 851449184 383606614 796005750 369317787 94201040 758904516 737652125 726800184 507389985 496777157 209564328 484779695 20108471 891085836 711961989 724136782 495030185 350605857 345598995 481111671 494816320 129010656 900340137 375914526 655672444 604153592 198099342 179034958 698966927 720625517 600980862 131027620 869691999 351454231 248751147 376077010 487744008 774352161 735475130 546397982 903449176 154812554 659836994 699719136 870405202 827466919 129964625 833055495 603525292 458881695 49418598 975889045 657106512 795402990 604301432 996243231 250355422 802315235 753176685 147946574 604715305 191430177 921960100 504258400 3567542 599978274 428731756 693945255 478817088 579893167 352456330 73588489 697049910 896562281 759203767 47367294 939722299 321787972 552837408 98887830 815402150 112240902 348055525 222792688 310208256 441796557 955671194 504611780 953474696 828385670 565877704 539170906 981553074 618588022 179066477 492276113 880832163 946753461 483068536 693370201 614744503 237817262 998090062 781795897 208489468 559375009 363404872 780199370 627341236 233006114 153260338 979384121 135326423 262696599 819937998 404629449 29210510 375958973 698782543 672857935 258860217 994388259 266991839 413388468 351565931 817832109 967373337 717775991 517097064 106169618 772709519 586320680 148351662 882046047 600930117 474386414 916261865 582979699 765437748 808039170 332916221 458537345 943544776 1429042 849566848 103415440 6031715 483885407 412312380 888453630 632969176 522329343 292154546 843965433 535173360 943389340 808089234 287760645 453554920 805302098 569190469 691218553 851398385 118281813 593416035 44603137 204196271 431507817 162729021 294256413 548063163 258453864 370224212 402118049 399039521 199902912 239264991 742532659 223249122 748743666 974170954 11016657 20018035 141863956 614259633 476179272 823052093 744137552 100155241 536240062 216685083 892277091 572837752 258963752 261761247 808008223 282511640 269520084 378499021 254430185 469927480 619260897 297112349 565943867 388621819 82815426 668458877 76300323 654681398 13772480 612573838 207852739 54312182 161342069 511647587 558491087 692158712 902450769 783857925 184759826 39021104 862949912 828094705 294293993 745288003 826946657 363025815 452118470 872751884 908117785 191360221 53055662 635723035 104660478 983056539 717788348 456120369 491690789 481711901 43616668 519532741 549784437 758424996 860958992 739098498 574859050 186677989 600600943 802398151 70255186 777879432 553803809 169538085 260657491 437873322 984513572 267295973 267850595 992428123 308496010 927734912 559068431 224935457 954621689 394292772 264882357 170857844 927144489 495905846 215429385 221031488 153264234 498628810 137509268 435789158 299770395 15398957 990187312 454408506 454096436 616388444 4040845 399123462 245584573 196261514 892251312 795537030 209248084 891703710 836451183 119087723 961241004 869503154 148100086 380728536 271628808 591226517 921730372 874868968 449245636 209126730 254902447 663997478 600829901 653459079 272376924 674914067 892110627 232783415 796491208 5309347 519537502 383790329 945528898 257159104 521402662 939243166 861854574 383669190 482865338 360102574 889992643 508427013 493527146 220332260 127318286 177218115 919546653 170608558 647936749 889807415 440394956 261635758 657215829 668701199 968497925 274192187 943319821 507821547 718420329 327988961 678264881 125970783 273804334 663658972 553377967 712266229 364771997 830050209 667757773 306920873 427543445 291319126 89425825 266973547 278125574 463693397 641388951 334920097 560640887 104859821 172168944 630592162 558143106 148031905 254437949 777569595 254464850 790003239 961912551 444572974 346464811 665547113 192333739 639250863 107659747 392112968 724415766 734719973 107957857 417709268 583048717 594089327 598849829 283527893 818792008 213318364 215651776 526782533 421348562 259021361 32223319 990448852 176294539 72834408 429798436 300961635 310711462 356897003 266611701 987037833 267410731 828411421 732571307 7953169 188468598 948358097 326611389 533644410 231988918 677596881 32907698 70820726 952776815 171471448 294750890 677095019 908611833 255099544 588354262 426349557 184883198 123379510 899037948 159109474 971254528 722835401 809400564 451704628 677071824 631203934 901697069 818704291 510187800 712435703 519993897 71870233 221581011 657931015 879401212 99079860 548700879 257182712 687758801 896580807 986154802 166448549 142575973 406912857 348730098 765985760 521026186 226683044 475911771 354662893 772438182 93063575 364237197 98303749 515041841 665047125 321954556 102673108 892742458 771874484 58793966 49936380 201979363 863174847 170901249 518085776 613164769 210855733 474217634 601163929 636005885 949364743 47697814 464749205 196969109 830633693 497085301 104871411 907096603 479344018 485474602 350586776 262294165 656474804 859095925 8383581 390908699 523011077 641782121 860006286 939988573 318943996 31116014 944983916 235125019 326551877 748577088 620367276 576792234 732621117 541914990 437524471 34837366 369400951 494614236 229167208 841402234 75422777 623229377 39555601 545955017 7306751 180258730 373499766 686653449 325664247 768782325 793631504 259666163 605944196 466926679 454002123 207615189 64380860 722045783 720135048 375401232 202691050 988690640 266481564 21790617 773198348 643671667 339794767 869683580 200870741 102624834 907560030 187119445 581768877 235207958 207191418 754493397 184405292 553133851 619939527 573800003 999954595 131340879 662397022 494015736 66732563 200846598 439621835 749045730 789732915 195954793 644870031 378431234 491987438 834803954 414912415 75039982 656342243 845075697 389278691 60729167 476355556 528552202 835919800 959587172 824151415 620067509 99279727 148592254 483252824 518468797 518259403 976025218 887210485 256508354 404129671 495749738 170636528 792910519 743591886 470084804 836397985 268146020 843011777 265604657 545834130 459650788 34147061 635101671 365954817 465472040 135879410 972846640 238906721 422477939 581121973 711544041 621642201 780252125 145191726 734637060 541680323 361231312 988597443 982231046 910642478 622126478 877008844 710513289 259986781 991125672 740051989 877809851 681819974 736971144 658412127 552533470 82599700 688763369 868360926 944939462 694207398 48937305 420613564 288899934 632517901 572770238 404797333 745602339 677197074 813823438 262996473 770838439 504560557 972460949 170150382 517081616 447616911 555421427 851412075 352117910 979471001 770216476 43286238 349220104 979977315 195957270 800986023 926737224 191555254 228279614 668013723 387305418 111883794 117727683 440991106 752886809 818753577 809752106 810050712 86557523 317904994 840313288 73144592 949745832 754609239 718978379 845948812 667711966 657513047 354474802 786486951 663450064 615631333 855219280 754821483 95261418 403926583 916729933 671727579 196194735 449774264 214212133 774158699 388579636 328074118 439727271 998657922 613595042 647499252 546618614 946587135 63833271 976421129 122127628 139265457 313794629 960748032 347739698 521450718 933615282 401021126 735406986 393715133 719731575 956387455 993792645 683680508 509309345 966195202 869628781 365026362 995649107 316543064 536658908 373139598 994504002 453978945 796959043 614483710 2868536 322924463 445996389 771465993 964722833 258434632 654761689 611498270 978046401 538039272 537364875 582969122 803129803 481521181 127692091 649705710 754818251 786302377 234552828 90024143 812125806 820654852 31759031 718298117 996988021 649781976 451449766 642214724 682137398 837988483 396751065 452617526 444653594 89296024 291979444 579869430 260995616 275864926 932365423 957188758 410612313 860855119 860350613 161132442 53034090 565887387 136404357 593855355 109065485 641551523 474769396 146144806 668195984 178873982 938795881 893691514 319075156 590355319 901344448 579125453 407413327 300283020 206081192 703429480 577940363 373283825 517489701 860345094 952108197 229836171 29983502 699736409 265353550 998197622 11011728 815981957 270806990 389715584 343114665 150728355 501399932 828845739 274408366 833751616 857798471 131573167 457328325 108650715 228030000 28784501 587452524 427624554 231200717 106223773 343161328 983909078 215073480 698463993 309521655 435091066 652611934 246442512 132899319 834741928 912082913 471613340 843009212 518542884 473291062 343377420 728354022 868970919 56131928 806486275 287223400 529718877 32541139 24751063 796437002 651788391 8958026 949331474 310013416 971337050 147209457 502833141 995691506 731151039 446139155 582365424 352523370 696644241 899212685 132060203 53041257 76829634 800453969 1057537 600304217 791176374 524398565 408506751 171517564 427016645 791047649 717907178 666239844 824424382 671854453 470665782 460526201 389277279 208850656 441457295 434818679 905061598 282922746 595782100 412922861 665131107 367044523 572096279 469348798 917490315 979362417 53344542 994548132 208011239 723815134 432133861 801930408 866007163 673940760 252028954 168914347 158992959 659284568 787793312 894367201 682369441 369716075 900817421 200030545 414959617 740017972 494641195 373190998 733628980 177350952 336606074 949553953 785683202 681954768 310715565 68165172 246011816 407643979 162380841 140971752 49122903 493129161 581993609 406670568 703264947 435107345 873705244 618981812 148854868 60637180 200298085 739147551 865514824 700146935 230128794 398290 896895119 937094277 259617318 335842247 397500574 852690107 4689960 607058126 458348509 308742851 937735922 529108235 812128041 854397785 671683722 513345910 286038099 497300817 797180204 183209561 875213982 698167311 645935046 384567254 886452549 890344973 525906554 999902303 322590707 544606041 475318047 632389436 938084681 765912084 42644929 410318600 767586651 145415412 533753117 62516788 695775795 825658306 256417574 16065923 267988557 637169629 969247619 263927948 659250457 875146422 873956366 330065468 534786429 503394386 24565078 139013457 512914512 855465931 124197662 576072416 139102432 557077967 694464732 280701647 542016365 655449375 692387387 615851100 320552875 479959826 829915545 840551572 564763972 805910543 183091849 113999069 832741972 814143510 489576019 720162157 408641003 436966200 951786095 510105040 749360271 934228506 859558158 132410213 919919287 427261047 709906321 485231586 951628625 246208411 885286671 549522892 119675965 431318248 113320660 156770048 387492047 843969109 142484700 776323885 282655313 441194218 519452764 129737303 654866558 506264389 7094842 61373270 721877001 936548888 572860816 485537877 669731092 230357672 81701421 193448275 141809081 883069776 662294803 951008421 335624837 216220668 34666234 161066354 388815608 338125486 128955084 169718838 890989062 226342909 427210791 98595135 468609688 938650001 873704414 829334835 410722316 950000808 222758520 988815752 176166577 281686164 790714544 13232907 583098444 986390843 276610035 181121626 978518679 879374230 970535141 406036586 762960828 468703282 466775516 451022593 461242078 487580594 724377443 114761020 27958928 867875147 591431353 96696331 775705435 787045190 490711120 895521968 681944637 365100417 998717518 497883460 390627621 727230447 925125903 794261810 263413112 44400403 502483873 365014458 283135119 808223881 122470982 625066095 237377079 253043070 352376054 487703994 623087407 741657395 868802522 421671765 106746797 444998013 503613394 368394448 901473242 972358984 508782320 372218895 9250897 60692239 478506747 542133705 238465188 680681830 146188781 708484619 472086487 177975665 398931573 418117300 330529507 474853738 525455478 648079350 236959028 493855006 362455430 377083611 860782380 214929008 640004464 110622142 134449822 750069717 437949106 863788750 315513171 378643159 830492928 324450958 335224200 120160403 66528703 995910232 138983022 984117818 548282507 860496597 125456041 128483219 674495921 747405958 273354450 934970744 910619830 258077759 542132213 600745044 483038414 431647654 417156116 667829932 605170533 859080121 334949026 129415571 518064282 465802053 720764168 484469043 13704639 306963311 702281507 502108491 234579931 858593839 194445764 165996972 868822568 632838352 810557743 550949051 80797845 415861362 517588380 161827827 12527172 919260808 844892602 146405472 602546189 455852379 742538023 793857828 515685114 291376260 490971897 323902965 248092361 975331190 79100984 453757853 738346093 799077874 706001505 338381433 109963405 91583120 993078245 917133563 418512900 148033341 545538727 774933545 299583071 578489783 967031426 428255771 684499042 730268179 988373441 271450240 76829315 349142840 219295141 113898266 283943278 812395874 271710947 618040381 45254783 741446303 924366883 936781652 320507467 933011285 963515522 746087772 613133591 623093946 224785 823362920 114645855 226281819 591903315 924257563 632442961 654120854 349141699 714921265 853654607 216515615 636946764 301639158 357197169 538140287 824879311 82051021 496759297 715769232 145238945 559429034 810717949 661604354 82459146 330318744 931567768 844378842 950674630 461259061 805068473 140838382 51318152 156065329 220941178 477215850 430058867 294038227 902924202 865981773 235360159 910983284 819118924 168957933 938793370 423579649 330392598 873121903 106142692 560232573 18266099 472818256 755835505 947574653 383226753 432528095 294392107 460543914 940839060 235706304 976022126 54912322 60178609 420714 788227978 564161176 690876308 922843050 61461317 174828688 845257130 184805406 655888982 857474852 989535383 746455227 252356587 816570337 731488178 125598280 745981476 425065066 872718980 706066656 812301461 229752052 830057293 528712308 335903944 101999817 89504639 410259271 443089081 132543173 373896257 657658992 508068184 861622236 918069485 150172763 268584203 154338706 867266450 123701576 831074345 784180865 419889010 684818379 793849216 228267735 297966469 430425930 698825935 651108053 307168501 138030211 878363469 288240465 569531808 244813827 386222624 385101877 95091866 737645231 780064999 129578749 54722728 424225343 402487857 462157117 774098629 23031742 281940484 207921945 304419489 670721036 604809303 787186124 63638301 532968028 973223831 561784354 214248656 337168054 211651366 753828605 645644421 169724534 813265367 187507667 151870907 633487563 312478836 295527726 832941859 826841913 985629240 795293995 478034214 98531351 228115798 172747772 668914781 319183634 581165424 909299302 586777111 244013992 36717600 695400515 131175638 693542318 351710066 325713154 969301202 543274443 410203752 306999330 679934580 289228795 946012021 865929146 583284956 243152396 638063363 831943924 942188636 76152356 928904173 694803598 182169339 865973561 231302149 394238808 419335924 59192727 51050639 770824376 119127860 75129694 51577028 3361577 430831071 683156738 778333777 367068855 451970251 829725129 189849557 750544772 115209731 40676944 120071014 432236615 340922437 355932423 817383181 41103048 497128325 347295920 636470597 127144549 517681000 990690020 561253248 337877137 893369802 731971726 613301922 54685519 86694200 858663534 234585988 423210427 96727927 887701399 631877490 461398657 798931451 594759153 535453870 54669924 154847344 272534200 450019563 418551993 66356533 484682491 304253906 883615721 947948508 539464222 786365824 236784627 723841964 675135576 601826054 162636519 854606879 103619894 351828200 952884076 555806052 650176022 521457055 242622779 666451678 68747437 182457879 894474145 393620899 885034369 524315697 445747201 426918141 186422384 464155970 985838672 740820717 541020456 926690962 185581975 987029667 393573292 220157407 432767605 836712711 262826197 579595223 706376602 805994292 578538191 589828769 968789069 661052663 330832792 114806869 900885735 362688852 142945156 749133183 523338582 275499778 962494907 345053600 281059227 998657258 620660410 41634733 797615180 675168939 478195918 154753166 608917267 209770265 337185948 686719392 374579501 691219130 361249180 859496244 566815211 934263880 193274521 675813134 522243892 243170097 36512306 177262310 917181441 6089754 168404829 910231274 463440096 193212248 76714975 649735226 114842227 211953525 294021844 450524011 634852846 363030449 569082669 861298437 442696603 345764478 78149677 215107077 885712217 185058819 716501484 353441372 504581401 519539867 287669204 324023149 765287264 423044947 701392679 659865747 451600841 816932975 199410038 607617433 968303488 840006117 857922347 808984384 412741575 304943584 284207617 159298492 715018869 511440190 897798022 169217847 434281585 879844371 228979616 728172109 290849340 749590052 980361477 216371343 428671589 493802349 403184065 632155392 48060946 10024604 41729972 898777755 769134973 243635091 548183825 30422730 677978229 525445098 361714913 394271728 743497433 280639850 631960958 551309793 121966881 455308435 843790616 261899365 895213781 643614999 911040563 789351353 203787539 299188829 518649895 474523405 548837133 625436671 874213791 831229702 899336841 224157772 685479707 668740670 885041759 463422662 303964526 485215679 338423039 621443749 784164928 491767692 393365224 928933203 368804493 359352601 229534002 340806894 243228451 471202253 816764933 400345290 539217192 757395847 884204320 187518444 200896147 415971606 616224851 623329680 31926446 872776896 156787205 910459811 240428187 306451132 128872366 171059017 54545355 979625400 253923934 103818584 81407112 134925139 81458485 216484572 786404972 176165028 782237161 476573585 648028392 607059121 956248387 272584300 740645311 423199481 326571937 530800659 207192968 699756523 60701558 651650400 439736367 254022509 543471558 736608738 994166644 331363670 744648875 400709723 856085866 932226035 537667538 628927811 917951737 324871302 20386046 586506563 375438430 199025090 583092356 11517372 682176422 736307281 73692622 781419326 89674038 598694222 285806553 170110481 957061702 286652107 847655350 612309167 452983137 620137548 78011148 656988743 171748582 481078602 115621524 937742652 234555786 817031090 108904604 914935204 463129300 936320611 201947525 935577034 418541984 349767604 639701061 600572077 320339101 582199787 786450150 609729663 575861455 299311559 816917765 890093350 832841229 991499511 294126676 686851774 29276036 279391904 115368216 374608404 510908978 996508123 733841579 441585965 409843563 351226932 728390139 747653565 649433944 167613996 221549065 337661873 93985139 285728184 157580908 403694502 5568781 147468481 786289100 925867887 25274825 637501858 875529319 879309970 738270750 675802541 60289679 257673931 607241176 76271526 2279721 640338057 225373335 642201158 414374447 363109740 158001230 12518585 800614703 167763661 492625349 528591137 39354315 755468342 595291416 432394513 829969975 550042085 871562807 299729426 84485566 16752462 732405092 15739937 257049918 335805334 666110391 110091823 761613223 820197913 773148061 54868640 98454655 326469860 788565845 741731277 176887905 151836987 935317874 229875842 548443513 991277077 95775068 464473728 285561866 261011611 827856846 556552444 221640936 843509933 135754073 238777630 9263102 142737756 926656224 689813123 853405898 411946865 802356763 609724348 830181084 858897893 509051924 548019405 71650395 943481959 78293932 952762286 432751743 397496281 379319831 996395213 406788632 597233875 949786460 983380363 340624390 14821919 935624406 467818682 834534334 10887995 596955573 357377830 384607692 874233050 859514238 856385545 200841291 284285795 283389575 244048276 621271406 774539633 58871420 251378541 869161979 894974033 200239325 337700139 552076747 888995975 819695997 100716252 101731916 737107529 666574597 840637313 860178175 552788482 936831342 661695884 626252794 697227473 582234251 838720360 8568934 787172615 80623229 231349233 781839618 514485933 720796732 146490104 635034270 441137659 37331989 765686208 186742433 910078434 456673319 338209668 761872260 549881476 148693221 998699503 503083349 968789430 995163031 896314274 331605045 240822149 273897176 707443377 445089498 445256878 851608345 682018086 812493070 949996836 561105693 648376189 869397550 442772109 333322363 708656422 783358379 346202822 131237408 462353671 667275660 481277531 701136586 331247095 391891691 977283855 860217742 380480324 880360564 849833050 125216338 954859822 857777897 235986918 792340051 239439210 453006240 650078226 903153313 609992607 598140163 608578159 117875358 391122924 686735119 660944453 541600899 515619681 755266518 934691599 638060508 685573761 578185725 178704122 231839238 224256454 513086782 127598955 887979192 552247325 464279783 317211510 547368567 492032358 873909850 165333607 204186400 945529589 147583883 717833277 153084514 754314772 682297733 483676202 597828673 422387327 513397989 784259861 354402197 765078246 310895709 623611416 866222217 283156334 409631027 157867777 115595548 740335664 894511039 310690517 98959267 313326521 656658928 750400585 636660037 719593865 646876616 84018760 935838845 538808980 894073307 760696432 301734300 283186628 870119380 740286868 993014597 141441652 984166641 598733883 354736367 897130742 760484482 319813919 590216551 746880271 703162989 122635696 206866251 948042870 470323629 95221391 199339408 357541720 674755279 485816339 963601404 997691607 806171251 67659975 128080812 231350150 535774161 282210794 452763536 307321327 688166705 905777133 293707498 581557005 249385586 500397305 870078419 314428626 657874308 961270119 790158774 479994018 639376110 954082373 382821331 457690582 156606537 232947672 955596733 540782139 503858882 155283476 747449309 329199248 914022812 945396518 503526380 900029195 324100780 709868523 433949565 966411221 813002459 743718006 972972145 775346569 236214952 461222542 379082624 270766521 640741539 529282093 772160183 97854825 291695091 923248642 669329908 710411666 705220305 403762672 504471916 332070817 461796107 690372493 712015910 607292405 660713602 808778916 521505918 490346596 566618540 841831859 221909155 405904054 950519314 781535854 486910744 779952425 341654739 932672570 171706679 981718251 373877024 369218738 123009449 629151907 113989822 519442470 108753135 184997609 373890695 205381143 238427613 860592842 542893801 290585533 83690009 14273605 855307365 307650689 184644768 602861776 127462417 544319619 158332482 173501395 627283991 561272085 287404065 937834795 884209716 292489021 834872886 54341033 639196218 243397687 564199884 742117777 824080014 753995249 375833603 470944028 815328426 149048718 472342094 758134518 296144796 587980772 637659893 770210496 850543749 570609662 375124372 146792335 751786268 803325850 13461402 355334763 177432617 760181675 517290699 557283537 687840778 338794712 504033215 950637362 452862769 76949499 373915745 370879858 676216995 572471972 323407472 571692393 587915898 322626452 481723393 695123813 834421861 835897666 856221691 321146534 838190627 665695833 911039129 95773665 334478860 966751800 88731628 543703998 62190984 712359281 664876119 927948122 603538837 706136650 103571217 828830918 477379397 859450175 444142246 456291206 641061949 339803006 890248567 86748434 854413624 362199401 225755189 533099864 543318146 421888280 194654314 81713976 459832958 924892884 841987312 407805703 635096609 516220317 274225783 91364109 816986996 579045797 587217924 452084743 236994069 464142547 822538092 321377701 217658294 131969345 248284637 348111117 911376541 925894591 551264342 734575958 727840803 425191501 490952234 136138766 750204725 643364517 408852866 85243317 182059222 256579246 665715159 130206784 407380635 853953290 346247804 250714006 427323181 495453065 465627410 34000406 126381771 69271476 660566033 421431056 452693957 719377731 193864518 949876039 507129602 466145959 794805327 926086006 579698299 292135297 812770081 983096519 641559998 509471529 7097987 585051997 801809004 798135592 113607312 218638028 548355771 260480446 560483641 127978139 723612148 401801309 783765697 251970249 689683702 889042475 504083007 185537605 617527985 340024964 234300447 400984437 697722028 213850998 918423713 661444784 216524160 94527556 360444505 818747588 929014619 971989476 497855149 385485681 16491646 913846657 167879770 703815659 652976063 670972665 759162352 666626908 638938376 273609567 892661841 732618591 502509014 792540538 631555894 305553030 749541307 395286597 561760682 483396310 280493788 278120813 661063821 498565190 912731251 345802710 468117778 96702788 166202190 417176599 481186625 902093103 469560398 293725433 426460790 645215453 618478313 887247867 4887008 337336087 443606441 693917137 819483907 872100633 795567275 904222433 129861686 255429395 184968225 248123332 254207782 256403626 863749840 712506827 278724945 705099127 452482707 551077752 209647756 680255879 818844374 881607936 591039358 478491609 365820187 765520592 985503778 886213347 13133177 90769413 716415561 680596750 847134488 547866354 992844310 541602101 221501622 532185502 174472320 714006826 895672101 177434179 718473171 758916145 275428298 468943825 692158511 77804931 531924768 331516520 174993416 949663949 88070451 704305633 11785380 136511662 942130214 413122630 904303264 419361596 822810285 942566486 458260076 588115584 688056979 890510338 639999178 643714805 499092278 554084595 525659987 462022669 551422982 508378881 216178418 35602604 755129098 19068093 51543142 482897835 201470810 154310632 949507781 129079894 504159654 471711226 981824500 262457583 7396525 19176092 766614319 656148777 332223431 477678126 252436871 278703789 161560412 666383938 893599327 231014296 293681515 766010399 899679215 568681723 499947524 394393407 748507585 392959834 158812110 14699473 779627831 796540718 628391554 703190327 751124483 353162595 734797677 816546441 163394220 278305242 792594930 808684305 307981072 902236136 752497670 220136653 726297821 60539094 498741939 326646001 54209558 653876319 522108053 675459170 489073044 785209140 134718048 163532859 661075330 174788475 875440472 394540108 116825056 460257612 618045911 641544086 868980482 414618931 915484106 151283920 887356430 591297713 991826229 505657061 480512385 846869691 27986603 626676084 54885291 972304441 94210006 153647951 465357102 685079688 77363701 12004604 323310979 794685433 611667545 311101239 732669301 55300688 521578215 538187630 773870499 235530053 507519641 889538628 491015938 714209542 46217213 256393742 367239002 377228467 947976628 377707865 664119748 458726113 603038452 127287650 280213810 324910616 289896967 204675740 12272359 645028181 309497034 662479150 820727547 987045001 155220271 579646834 917810904 393099031 483232187 259242104 722175424 30077018 431671816 996755072 687342404 860054045 2833220 301249924 809342414 588782881 261113009 542479788 329378072 379808666 508717603 352907735 766119091 442670002 94100613 104442393 12000386 117794309 389912660 576648247 262752060 758619172 4583970 838000173 228515053 274506002 365190420 133163176 716325237 471963082 741317989 263540621 962457351 632699831 812567777 75651184 162489004 403183929 786742635 617240350 830547646 481136679 845147511 62381587 454274925 135110216 924626576 354593540 556373309 492431833 996244947 735530327 706204550 396207626 62062194 300468390 146619635 767507841 578053171 175827776 654784516 916366549 783896047 769856680 474833804 257827604 231228947 945337364 846683955 411909181 3468066 544445679 5170164 438016967 963748400 124891991 924039840 149205785 506192745 392547488 557890138 801649167 344032392 819343311 477994778 83160444 202097504 770749471 147313194 30474146 588120151 882445184 681786028 629204155 583477990 250483987 92591121 407471476 554466330 315212719 483282595 168371565 710254358 602580063 177704956 403844026 42971023 910328034 2187149 319111013 521068110 908532266 522336536 474623465 639001522 44776157 392042295 367358904 750258731 521857495 964733907 466066615 468270272 349318822 268131501 544121021 94765962 275120141 29175256 457661463 112984631 613482113 595031612 701223431 100622984 896082607 746455573 621522752 916821203 803789812 669108595 874673772 960844417 200899299 729344696 390807206 825205393 537349059 374136605 186879488 28505620 208918287 895845164 589218303 108065967 23819252 143755591 635641370 312751388 177811670 144288800 624323646 640608681 624713163 394982207 68062541 334276791 86282526 110384512 201822618 969661756 850254286 928247698 76548974 135307074 858036748 306005625 507100039 697151077 524523457 938560524 164130708 162282073 720474885 7288695 827329210 851111266 375410345 402627515 332370450 228731099 46638254 18256425 530953000 613728688 680067788 181019883 788902014 310301411 41613036 109309307 159928839 760766986 523377070 116343594 458434988 756352975 188998372 516501915 661877194 427398767 838223381 852733253 351612850 926773308 30412027 762847220 942028840 237851163 416932357 1148744 328830437 203301383 723941078 258980148 179707413 574176140 545034948 185648768 518874330 95072332 792717658 299911496 529434055 263799934 295730390 188955004 908403813 51415402 159713964 30652254 866523825 954961902 337522689 179667462 409450396 9253628 388530736 885622241 754943882 29781529 424448841 262575918 474117844 822339040 570948749 775755904 529624646 133918845 944412403 401056063 833020833 855743539 18745255 293504038 477836314 840561111 917705349 750799814 520654041 140842834 248746658 894476034 290838907 570764834 455468228 762124177 172788881 459453913 939263973 620620416 409173535 581965981 974036404 125640365 394213406 686086055 162494227 266717005 466210042 363326916 179173018 67651686 187937812 841937879 866888979 129950038 200878657 741407061 822943740 450351946 341203529 408633543 248823304 348002248 659123561 452773451 833268638 710399270 438843857 287546900 51450200 581868304 515666727 980837606 91278982 403711750 929903875 664651931 191727017 572484827 680646001 105898144 563461880 4714295 602012018 774490232 818001630 565722134 548147578 603543608 641336441 380463432 251274739 533013769 817080349 405350639 559172025 416258986 796321231 970831363 53436061 729507564 221472203 990897873 814218723 688469556 618288895 517910904 854608067 381586940 340799373 413390443 144961259 724756049 355124557 349596402 866844923 332719446 652865096 898556840 962601735 992114625 255260990 833318654 976322329 213010777 462488609 118757303 425281965 318767486 68234904 353814890 174383156 995460513 793514109 407256836 339430289 759323591 763609695 462812483 362006687 309984522 594137601 573800251 375079592 549661720 602150617 301448405 502873583 208421298 191276178 774652235 650915880 537250606 622610314 976441774 539771131 624159478 50910037 783854432 891547268 64680711 377018168 227950234 347490774 563660147 317954735 357477607 412822899 955457247 402959847 363588519 59253717 560678662 884957252 613111438 416089577 293280564 40063197 532317730 605918607 236414667 393883387 84118592 653170715 366084545 232551582 371429527 342840023 789237024 675918072 741797163 744123263 580538246 503852271 752026836 169465539 144858531 176108447 982121916 887744712 266658493 921090262 481493989 858646440 553217838 953279895 785855393 111318509 830819045 141445272 330394136 31494938 475647969 116335811 197823429 62904866 695055034 238585272 775600889 512838639 389807896 720650314 120250967 220292572 560782393 315294974 74754902 549800507 481867119 743686287 752734403 857062609 257355424 135601260 260909884 301955413 605498565 332604728 912980405 551894516 774185067 699667274 975844855 388090320 333720117 810711339 757400860 77222780 310742871 749497882 81339413 587988866 11316253 38659211 277286436 266241757 441573986 266420899 167227234 632504191 717964825 991435966 574141754 242743500 776276936 754960874 900662508 697353757 367630600 683380841 351663115 535346495 930431238 393032755 513777407 100352753 77634309 285690737 453210500 611849066 263096538 152834307 111717674 770205392 695815023 979613436 45822931 979845057 391796544 641514272 307074103 914268110 426036961 562124653 947623011 334221307 572103542 562025103 881040949 737208129 187399481 688681578 676177890 411055885 275436535 772546196 580810353 558137278 409054611 386278615 923419710 935145770 36238466 219956148 130192248 850657561 10201678 871141083 346848418 933831113 327542292 194901941 904899862 745586281 67980549 902367706 322986877 897116574 850372328 206806427 393792088 90262528 255189654 962548345 983345787 968503966 917931133 477751723 167491980 403864438 750001438 985680029 106834056 199700990 341725584 405413227 351804991 627356062 780322810 513342314 934925779 189806643 332763676 500719008 130649405 908696206 149485511 244095303 815525320 906535667 797243232 700024398 335555732 246612891 497623138 797428184 267892500 23020338 888170969 273321658 195092880 431788889 817489127 299257857 122397604 415615269 488806722 476546410 802072255 640301470 814534580 11952105 21956773 529538625 218504858 182170147 768664558 594153855 717097574 806290163 893728389 251750204 356943389 831960041 642343465 917352272 578764762 220754374 383221999 538126345 201997641 750275841 967994302 61252264 354550829 960762437 457217233 322246623 542559450 2385136 158417465 544769113 115656379 27593622 756340825 295134002 249064653 997960317 948604520 93253755 774828066 146736670 282132210 689148344 586208352 719346090 562878040 205257825 164043327 868026243 641832779 662019172 608842767 82665918 705291605 319417505 595803183 337795240 776153936 496177005 760424855 23920446 509025260 446049040 37191247 778266035 2507310 435314759 255011318 616301550 292456939 305792706 501312572 168826377 492378193 156430759 980990824 4569299 947883103 75232269 714474194 754966607 880645480 180146562 311999850 688124467 953399701 346154118 36128816 127176810 923952735 793309966 154384569 83229075 350042392 467663106 459128241 978567551 130104675 274801342 386458963 126472118 93181368 490348437 690521587 723085299 2333666 860241993 205703285 959356580 624344960 369222549 567698642 38516075 217187463 490819747 680477338 875476383 593111998 750686614 3807597 839735500 300667712 296549890 886825345 828356398 13313278 281037167 412974111 813563450 807708475 566612953 339674150 717307158 582843662 73923123 773986951 288267036 362022627 32064223 40606407 661382747 553753850 226953271 816559488 746813974 963671015 623621896 440207072 50033475 456175888 491281170 13108520 282083596 148215090 358378377 334666030 676676946 328830685 999430551 484739291 496563493 213507315 580519127 279677358 378283853 421289773 702327260 11734328 359872196 827113622 309309608 976371614 129589050 166582798 625389877 644437530 568812432 944492744 759766512 829988730 410913885 577610956 322891320 441974944 150478956 376533878 948054756 128496384 451409724 113342453 501512890 793682725 343025023 382794189 951369977 593519404 119125915 803992917 672896464 850147143 574445612 10483258 1314532 634799675 635470976 795914234 530730958 175207394 458615065 870085226 680153243 37957546 670956079 553468465 221590090 990057749 642762284 839594826 8741713 556860471 188696622 501683590 10744345 495332923 804673160 193594120 416228221 602268638 180989249 221593799 276830031 387397106 753420435 60449551 506583252 479987677 793207661 81827840 860874563 661843479 485962226 618265102 676209737 828465328 755544568 61003391 595994247 801729991 92888970 736432624 506725907 166710292 609311591 160884945 540075763 625552735 511771520 225143268 193888165 978649862 809849725 481269442 751046042 470366843 312725817 416889430 197336502 373727684 510592322 890407775 398795474 287555066 255562586 759334130 992809530 542256586 585788664 798836983 418235440 533636599 256266696 457507495 761430119 691346390 111633447 776386324 799434888 618623440 723333032 997813665 822042800 999258083 93774737 121598086 140545520 656624162 46927710 16205 667430092 486124848 200284989 866367320 620331453 684623561 712389265 297200729 603546543 493772346 428153968 300589783 865031811 997734628 125662757 790805168 249374606 431219389 61979566 306815377 61036057 550830798 568841790 816529280 634712543 32993718 400673469 580658515 730241938 860609061 673516611 421751606 832036693 476194658 280007328 349043497 956754755 464671174 810789592 329161088 364710887 391935807 542961055 419789665 108502722 934494670 196959713 553065289 636209353 837195273 84052285 233979272 598055140 408770970 414110852 201104064 962782320 897830333 115533375 648552554 657547198 955250630 441079079 753893713 960431250 592894361 668218539 469767188 542724260 487719984 245353325 2153896 905042466 821809177 148052421 175137236 746626093 69906421 548397629 405397940 160065879 530999547 792476691 258454071 728302123 868644210 747165626 539244705 293868453 73864506 199293785 196819210 534614454 329282116 545549642 129972444 380670402 20526357 55620252 946734424 238116641 47785288 224576402 137277458 824008609 735288329 858802210 648491889 869438466 103813274 587191415 810224432 627438201 543807185 643561840 129854176 404145454 178596248 84328222 792274020 728040125 309861740 189417290 320926835 669553337 577729759 536805868 502873369 402417701 789356311 889844661 8532534 377484793 371511884 76086918 101691389 322741667 388014157 10015223 801517431 400620419 63391484 519256529 126798078 546756461 356268749 644737684 276144322 805449003 452631372 311355378 642552135 304617721 47807892 649690450 354110437 785076231 714552536 860562510 732073799 691391739 456654045 837372725 803046893 71793260 189731966 282137482 752201898 421898600 370293799 627125379 868086566 701797871 29656155 380249482 942946396 540358517 417004591 247492800 280195869 508886884 879553484 539814773 320323212 790519191 557631216 476306609 345501345 348786401 728450926 100160431 31236262 997259140 91739561 933028444 481274300 926244282 614534429 228549084 338795863 287087152 593720023 147616006 971475390 620666502 466839544 375132387 719856268 168033232 184137269 904055603 63769394 778381592 741493850 467804903 389891954 923592665 333134018 841197736 738327013 707914886 144700897 807402831 745414263 833594113 327306427 257030251 252516582 527907620 631875946 144687294 685953862 277400380 747220891 877598912 955453055 144113800 258927377 359949083 530868941 137415614 386476065 769918765 139012672 776595335 5804085 995591049 96495930 800554238 165843529 978978934 708841715 418102326 457445745 745850478 108676088 379615409 999792465 164319393 616430760 874604521 664101027 353468784 392657846 910485450 58620853 407723250 772786346 397522742 707918568 405560690 384184416 478849664 36429618 455452654 256735623 96108529 810888861 787901594 414310690 909706311 311366342 166431579 18370315 709254449 75369311 925627981 6247531 771787732 485126317 911903294 318187588 271096649 95691786 256526640 284570599 11113244 719945316 609981147 206369150 817032143 213016764 469835048 891747459 150785877 966575785 42978999 73998919 117641623 43035858 268884314 810919020 644517618 758171511 157240984 443236203 474167479 328859369 471917611 896941840 979332522 93838862 873120898 757378297 888131204 388064990 463093568 100930330 361697906 585716968 833964475 201374779 608613779 895594958 271412605 404551288 183899005 725969860 878167239 757199808 609017272 115709461 558316809 856630872 641852993 678368158 317247851 851863381 313774089 626295121 674828616 850687781 460705652 83222708 509661357 996512775 699300059 128979039 400365791 869908622 499546890 182169730 418289874 852732962 331904450 925561180 886580658 257901438 347356728 88094661 683511646 28981043 968903060 817247141 728391400 978408484 699593588 253284474 950113046 709132296 707144294 955629015 228173540 191055340 340100721 81063391 271280128 625180846 174764941 817099726 684013901 94442371 449339942 544744049 606951265 312153713 922104221 691068584 958676742 343898326 876846791 142100971 14090172 866832863 922177132 810248898 798671414 139982610 509869001 396618060 832090329 288161989 294459150 866830265 288994368 201665188 938284513 638025424 527147450 99669039 318151642 527567978 851176394 86921529 664097029 933839861 230069926 619836010 455183971 533440241 134675641 516988350 587062377 319895926 514759458 945004293 732038527 344593581 973294131 665686625 942441090 312161107 676890098 651008714 74125122 147310649 240883355 90795149 899392261 546829510 686103835 400139209 965272834 575442291 637579671 870597873 221949671 722019918 736851427 596428621 560267092 794249592 33852428 399655288 619311198 758249895 262321871 647654371 730566669 631186085 321377823 98935633 737265885 91308494 860865443 858941785 297025 169244310 904758581 205764840 335798555 349449473 633590116 286779580 695380038 872123433 414945267 234368489 319385869 303807676 199922776 151081560 187849648 553257852 185432126 969346883 927914982 700686269 298105859 256466363 712207190 69593066 188068666 437632290 328103965 529598976 239195435 749172145 963971915 75981328 791197006 588095731 661451621 551735490 880522708 937401416 986168549 982911949 392794654 473897315 30842549 793364608 3614019 397577933 609104056 536295484 166577807 379229280 879581762 53633272 678178302 68352972 957862554 803165628 735748805 857965845 315430271 836308774 494144458 370186515 866854816 383664616 946333735 14051824 205555491 539170119 861024683 441317806 464298527 114037662 57362776 111648415 803456801 175028441 593998310 16612331 908713899 397945083 435486271 504443405 123644592 409880728 853169153 743357782 768464154 975294811 340020223 794049641 509696581 129799298 666822336 546974397 746170497 528000861 774547711 707961631 221873555 87965138 96364073 199212589 324622132 570625756 551765730 643145435 800567697 405030663 490760576 523172082 212867529 229901558 129219726 662824332 662370418 448963550 977299787 231947162 959999509 785596936 961587753 126012510 308725165 37150546 626566990 493218801 679204140 840678831 283882262 913947582 706380791 300399523 712337039 321502981 547565925 842874055 924500987 430848857 706497859 312256587 418683218 963565858 98627155 388400495 211350717 662220316 44785864 360139785 962495260 202745814 356414155 240587522 165316225 641081909 306804986 794506457 191132851 840815598 388974819 380563486 914756012 464642831 71817102 600409592 793619483 77029238 957113328 464427680 126663139 397075800 126407545 125091300 308970650 711868348 986728583 317127589 421043211 319635710 857595632 578411609 988989108 501017420 539823229 314420617 53428297 801065772 477153129 41640532 311650351 701912564 87017702 436784107 553680898 66372177 371505048 355265043 655890959 707507905 667764248 712591782 369517019 22431257 924658546 237499666 155349658 437815295 595252135 60097752 948873656 189481840 70257708 187921422 253924180 540248892 708289641 701069022 815750336 697854085 15107132 248013573 613423875 283225412 675017331 358422100 242975063 578926788 481878357 809400627 124871083 161531941 263640858 598992665 996071201 237291738 429736046 545458965 205807249 998764331 557480690 834786376 862254853 353586356 264073147 801690729 416567355 840465124 150650321 708716095 290502438 467187583 26167985 331370027 394996845 388887325 307685580 72662171 180305131 71167913 648380422 681991320 554146349 72942818 794711608 107891769 703971063 247279837 863609774 852681517 68469183 996018305 296180137 944529718 616450865 267554825 478323933 645948072 711786665 476165510 810833397 847129838 610060476 943166811 54643211 409508102 90002863 973893823 319009584 514958848 366640638 894706238 606234346 325842306 974045399 210407480 851343024 911461447 247747228 948405089 661134960 593011867 734012773 818035519 416399114 186850017 628237692 66286768 634294995 339832845 735422431 558286433 910921235 472276523 348668097 266953047 740944775 498710230 149626377 217304938 765547743 537671105 427433425 424956357 427333953 835064626 923571432 86395240 220367300 570441346 835552593 993278886 678874102 930637982 705646274 801750695 728873559 695946889 519064358 231974375 110545628 854080984 913602843 337462453 970722157 178762548 611402869 521695413 390015079 990127836 560806073 846112863 632581914 479427872 384088995 264977278 391235659 748710631 520330656 785187761 124440244 372043818 217375316 615701741 405425024 536715382 331552022 239633913 378604239 455576430 617917295 367542512 847863352 86758727 77500831 102079427 517311810 639380299 17082136 61327541 369808873 533218903 598534401 297316061 546738464 828503388 176278708 296557223 646155081 93059553 837210176 902974547 368008382 861728895 977221863 996983413 984348236 511215460 910764961 367167603 733581235 232539857 293353368 880597770 499406887 401338780 601531050 199576266 167869650 392552367 392226795 865590421 293754704 433185927 133446688 308134436 812815409 622857653 662988356 428799618 355344250 911408993 632150023 621122191 342570788 375598274 919309898 311069566 174716828 478617767 869847460 829678935 42424897 558373873 978515168 262450038 520596970 547109398 270061437 166200586 284993373 957262752 139931692 533191575 638888921 593159340 739959126 512249716 872106381 388897132 164412308 369303630 843468830 684793509 830262325 370884515 496233253 843036722 856795067 54710600 525293231 584186239 293896286 309459428 618696635 883378702 801143943 710303090 104126144 327411702 589454166 802537411 74598436 529503839 513219869 831760122 109692614 946899463 882734563 835088398 572436597 95298496 994190819 862649675 437473910 517988079 712489482 930772689 639962626 633655311 663213692 649384212 453189829 950906156 3182351 732894042 283406689 33763945 764363214 947390016 49310185 845761146 164877687 783239222 995973222 897756458 12532734 547288062 690391893 441650135 180588808 835765041 812381223 457532913 405344369 232002746 563253184 805485950 913230022 207869784 252334841 208683417 870796236 129696288 834136351 229543663 654510327 57868025 859355249 914940992 352590835 196483359 113188517 613657316 673078559 842514849 779844451 739915587 91744269 737611747 993731785 490422620 573374468 161111069 262036965 401790271 762153598 342212569 486479678 800454035 315535786 329175673 779764044 669932049 275693291 396109230 835881211 261678086 477701975 44604418 833292333 928885973 266105912 712594768 169705013 396296819 257888143 329632582 98135644 972936681 83827340 857238506 152989279 649337814 755212311 508297746 791219951 948893931 726833995 486092266 578599984 923365997 516661749 173143410 272369210 990576310 713145625 478214398 933587355 39207859 546280814 739684788 335639508 272504679 252019165 532314129 514731991 775637607 749140997 353738853 467553424 25660509 481739450 717367122 356641625 405547654 445929090 709469777 705744003 654124083 852025367 173674541 434591700 884740940 863349479 266091909 912893188 703317704 502422935 652780366 552820287 172450614 515461756 681053007 338357414 345338679 754486816 802539172 946304205 926202881 787315139 273971260 374600511 652751838 895721431 503147867 144419573 334551723 270505603 658216984 70177251 105167961 975955490 982339040 441456492 547559792 884238273 363450353 684201704 551776135 255132580 316541920 715548709 244651469 631007169 671865364 633161187 241975171 615519811 263467080 144958039 653600896 513387016 674952205 802235305 162335148 922611492 50501 948000886 493116293 904872284 695200426 314402894 227263133 995417772 690743877 47226935 46991385 643329474 912004599 597209896 933392948 102631552 469124595 753041551 889599674 293372542 306687810 365025484 430619533 334714245 878316606 841950131 194429732 333114389 106680087 317227278 385701639 908211680 886509649 641360665 331331668 94556237 998916420 271952644 577177661 181988086 830973083 895293301 527166600 867773482 300022997 672930563 791563278 3272555 66695367 335707836 271779132 782139377 568489497 810948768 55979157 750478630 455518660 311682083 384958253 861188392 955468954 291305135 249620271 527659851 834650558 276397088 105113177 476889748 481423143 425322822 416650875 423813694 465742370 237128294 570934780 277233209 800364493 996556730 492705365 109014950 464216989 118210028 319753363 413108060 160795097 907433119 790792665 165084263 668921884 409757926 856920540 431219331 177814487 756809675 815953765 896990373 347679948 173508298 959708883 644846451 219774868 340197459 16917654 346897863 705282587 86195787 425650101 671000880 220125726 838708875 883199049 159149168 638937524 32638816 914361344 524559359 900708290 240750089 785887899 134965382 434723973 709570365 925405296 759984485 177358861 885151650 398715112 249022255 631921852 377313879 845656834 91879465 490947530 655580011 378436046 62470350 571023812 422186595 648948467 426686541 563844873 609482424 582545707 196101897 673314892 458170966 687936193 508705048 199300885 807629343 925751322 636439749 87445568 285173862 244423721 557448975 938278012 661089141 294540536 628829223 812641484 467327495 497738790 268226038 448532234 417981390 418807140 137909909 356710495 424761326 199853815 743103186 108277197 775724928 34281529 358681778 903191205 125885968 953685016 223077865 350082321 276390944 798167958 541459556 570967179 363377571 325403719 659824832 772085348 441019522 388758230 541008080 341788734 562942747 262065536 135262234 57625746 296609981 327626391 704472154 661410603 351186477 423824128 229952511 640470441 19053603 659938486 129073321 190103040 487875022 883340613 566727601 840063734 228495692 891044943 666727585 898926248 232260659 848082443 576327095 201240837 123800587 456213953 844599911 909197906 320000210 723711055 10306006 636843940 192057718 255466151 827733344 311945577 506742366 698528334 508942098 722953696 697877986 79282655 95337520 310196124 761256654 626954630 526734769 473421317 832755427 650923398 220828350 407512534 677244758 652330675 711104823 66312096 477339984 218075385 64720941 163993158 890584172 903193043 182730345 893247359 137828155 543084756 250441956 684841560 786721731 330020386 608538957 271081903 541125116 69342965 678380166 211472569 568152146 176000029 114764071 711180156 168842790 745192058 603566074 440036182 734728269 425972097 595447933 904001908 554675599 905992638 878924643 652901724 379363113 206187852 748222227 523100516 582422860 135023711 157964840 934270776 401578395 452813242 711817199 978511960 595642801 825319737 284935916 593118871 409348505 357521993 287935829 980771997 550181972 430629483 111911829 884146278 13679703 11156917 324851403 334213569 351683594 640983376 316747080 720022227 57683530 759209979 64608533 888565393 6446311 519874694 756332650 969327433 609339175 40532056 879317560 264829722 208866881 319134698 443983009 605957238 879145443 117849930 515984250 50983079 277105837 420615321 719759568 192036424 498980020 120800909 880094048 644173768 447329792 410671344 733574941 250205675 996766990 917629215 425827757 82753096 395105614 957982347 523066605 740714955 445890470 332657980 738149225 181000501 596904173 610047561 324603620 479088023 859114097 91619937 451463382 391219931 302028402 763772997 559702249 47824443 447887524 26404683 975874428 973921480 416118449 979360221 663390240 229554660 250171573 183753208 289066013 515420104 890579392 91479982 749072622 779336703 42186839 488455588 814365888 111736809 381870324 598208404 113138936 719278393 444001921 755325644 597827754 891132536 230254817 60375214 931477794 347087744 733606760 139812654 490962527 611488769 654238045 60204375 332864915 528587263 122112639 3786694 767353253 585142865 503132541 378087725 175432622 732761380 544063613 674447570 61780351 255820407 670073238 986080013 346042394 26546845 993279829 510960078 498776629 289789118 195768124 722432276 934994619 989885269 86428734 879395191 741964106 688490163 396120389 809192095 524649653 187350907 261052333 785949130 542150019 738344228 153968582 695123018 504553582 517849210 149541205 673153029 645076198 603855390 979834387 321819635 481079692 900604673 613842989 765138596 686238903 341516013 312774850 64455351 383261426 419482364 797657193 312678756 544077180 529530399 470677416 784308467 46279366 568868760 247088510 777268035 166417657 106204032 268233690 963712068 97829997 273307970 325111329 831363197 872662579 668368414 258801068 974877063 385950349 580541351 675850311 847934607 200835952 978724933 15784116 997711064 664102665 706440116 561227558 713385015 713546293 623179139 768595910 917367701 378328839 449321366 730733362 301348721 286348102 670364837 795274489 318634075 881795308 202288827 756562976 842723706 541100712 656494007 467092384 224565511 284289117 50787278 540684517 791010000 939387809 163203591 461445200 832042678 530458687 547113662 761542582 257400623 14827189 836698657 513193696 184233925 538320567 126303926 825370121 222089620 900132266 843490259 632317027 850643408 139175209 698786341 349248146 91012669 931223428 800553514 459931439 981362613 694135868 145605302 647144262 837891750 989481609 504197490 332919000 664613265 986202068 846678872 744738650 316481420 212305469 931764025 602072117 997263041 709298454 584323127 825422148 778918125 504374629 530416715 595903832 337628642 967316070 901292224 756791991 583972357 239040007 425299126 175788953 240357584 449252203 641531808 447893162 630661457 902549864 804189126 33226635 636981418 600094984 333791428 778415441 187360911 37043212 178712073 29221636 459432907 277579620 297543001 750059042 577175739 838242232 338429260 564781337 882380753 712512482 654389196 854688720 696108562 116601202 358326939 63760927 266844569 622528297 300997067 547485266 25743378 744015742 537780804 168427434 43940159 418719004 343064641 82161884 142320503 945036642 532992467 665359504 446754850 842773730 225956701 50821603 332356670 728886754 4176918 155750629 761862877 354007774 791538314 933374236 636104613 157131012 422449433 521490432 355281230 237269174 954222199 282975612 961525800 175958028 421574698 815395444 545403538 309052239 559889680 636036409 307422084 236718463 648937942 100644886 868429062 75046606 642233217 64330695 246457526 512006435 123086825 77169149 946867783 623772312 812249657 207973339 476169212 177075709 381816177 397860476 260141361 800118098 638355684 701658475 337413843 672062545 288058042 967339816 619920866 86532321 553135215 627183530 317188598 627814820 266829650 516013784 918581176 474474090 663596807 361680143 181863268 376205500 296375302 225410975 906098509 820151378 39227417 701342030 280181337 229411741 718709474 415852755 538782849 287728190 954755667 207067996 147798355 439999885 97180980 49234185 462014064 48046867 34587040 828666734 775239694 436631312 456244616 623803925 26387318 89106678 859021614 934798074 801475463 148432363 456421804 682530061 304188722 387416907 386537835 513074355 850121212 82752292 373569708 890373702 868708479 655584953 997512195 232092304 515989736 672528128 227838678 278984020 95535483 704994084 81617378 365153221 391340299 280552195 847352759 65759501 272616834 618998704 569609527 296061640 850164831 80036850 131890715 442438022 362579251 979193540 276013934 212645196 76879907 708872659 569105423 346045459 939698281 233236995 661021492 549336648 742595795 168878059 120053986 928558923 380965442 240958036 356841590 187262960 673738797 614645949 110485791 432602881 990563099 854368730 987608673 55141817 797468460 639739921 650475667 39172170 876606609 603844091 680808802 819475032 621300240 365927145 138746956 989772669 580657025 753144157 848412454 309113795 704331859 275825548 613773975 114807341 784094728 999509987 721270938 412124974 825475252 560719231 382366464 57929007 707130754 589215411 915476460 328648462 694801199 806159750 107547733 668075674 231704205 707477554 26737287 579911960 23358722 732261286 400464546 539147713 423056646 127353861 939408153 745696833 933143720 964331301 43294517 639979322 663226378 913263889 797757328 988139711 387011553 493236872 999974554 547877593 408129014 185120123 470096664 981337606 434313639 271465875 118164127 679385525 315936870 219299496 144832029 277527755 65025593 873911627 306859089 719118368 86529593 6461 283175502 294256387 595295507 76124662 540792828 583090098 27314058 905199391 980035735 849640931 737537266 567383320 236806446 133329726 275388855 414953843 413082405 850749409 754340308 686590839 547988660 283322075 415078748 674402974 399868773 725676721 283486965 413681943 612441242 131063259 702224984 124490308 681249796 832821064 918799571 209930045 583612973 775566550 577904583 447878476 96204016 477104091 22022953 949144175 722191867 376436639 801694213 960402394 878206804 459352031 389184759 776899698 823602641 54221132 45313712 744499538 915295134 576729098 249651831 38869578 854397115 524401201 14936229 371201627 236222844 614207568 174010664 547441212 856100615 262449637 724585985 589967064 817286617 552870886 363583942 904682446 632808002 512272187 422457888 287305712 597151972 293406529 24859726 37249988 173525816 991461960 89940897 555642374 314285064 755884054 870759934 49661988 14285814 335435363 850104927 419248833 508955124 727633243 556310354 335507506 770662346 993174047 344013176 56565508 101062292 33851716 190054919 685744756 546162497 25200466 231131465 757218549 218380565 320178502 357874971 461696686 864099367 672279824 130125167 549188601 973287396 439728150 948793034 376963558 409933194 764030383 490446534 363803829 467298990 720615849 430036113 996531296 936723383 336997572 536540013 949130511 965504096 734947637 201094446 682302369 437175354 120689444 510846143 392789546 91186983 342118190 321843869 459091567 900280288 618205411 32338266 593427052 431961713 69438793 604206108 876495054 151034040 967781207 380063003 209242490 183537385 400742523 952349734 595591172 291303436 899422997 771209503 971447865 387861630 460498682 864084602 544178837 302972012 115784177 485086658 64637133 9697371 208560697 430694421 212505671 591755683 363524353 729844899 80762013 489452271 411302127 277542706 331557406 421529278 402912410 124141725 795564109 657464805 173146384 412682576 926738528 446851083 13526609 85589966 704425922 662010412 431937489 697910060 498497169 862991639 682230522 963811219 417015841 553716720 380520360 246016193 275760503 277837998 410144939 923735688 464469454 497719454 342732872 744607054 561236758 915626206 404411577 898719884 745899120 549977315 806124200 919868752 68992691 797718772 324677560 967430330 877257450 149297324 650940156 28561026 785856724 873749884 841945982 53455217 838671715 135227686 927257786 509657059 206110525 664889411 208072992 169924684 273921342 327652542 658495125 218114479 943193844 178921559 11421938 410600488 49140514 260450594 189222532 268260196 507901501 737836037 112541322 817831204 147794674 155028285 830536123 356378046 773810334 125420761 963996861 34753692 344206804 930678590 674983599 301039802 772416219 690416033 809287072 851048748 579039278 57403536 327658773 356838294 308861178 285162090 366887559 36250290 291874723 910108130 729460195 469091534 317622335 272766080 146665480 684663371 111882521 913409824 994480460 822712863 447268144 345027696 535898104 187224148 20390069 907900278 610478279 825083527 12955025 490209801 816580971 107696745 478848988 974651219 358566152 143089218 653633127 333135957 104260791 863675241 341048115 379616355 218487301 106494669 170397176 356376996 866271601 489517423 995749023 405290899 17880305 58034917 216463304 433765761 34948205 271099353 376333125 431794448 408228931 799097480 951569565 68397753 166093762 860016964 550870922 378526791 246201775 996416243 123060347 382249306 975837379 424265613 211021587 917651430 743427114 959860897 130275496 837648561 253916677 800905169 859383493 913457112 595962345 176768337 673703336 590732106 235236702 251775084 240536773 797719371 618915938 481442815 592213825 343530739 563039203 979686652 80858743 297454765 457838664 341055721 318999671 729765560 134909929 44701790 521178754 599103913 795662738 657835403 212741007 4326119 757975301 743028399 338634953 18735406 150462836 306330274 425436687 193522445 799074827 253566796 356326003 206573416 872962660 342849579 769781436 564335606 389878032 745685714 710753764 741814212 49733141 615078244 54106010 497187760 34969451 575786781 857398976 851686127 590238078 447409865 667446766 27777415 86466991 446899531 299325933 660869845 718560979 97474584 278651454 658626569 868426162 602338233 593445777 52921510 832800649 259884621 894873678 806539523 108908681 757450244 474378511 125306060 647189590 707676581 124399908 615543169 334932104 242402057 790980365 915643125 385258797 273045405 257937668 697059792 900848453 54626532 358811505 81286670 768271685 772468467 634256755 486830974 966367637 34442484 383208798 581010500 902000914 576752035 533761335 481125720 212616076 799205332 755421498 378415365 677416009 363314923 703402069 798617450 115015296 588360546 908994218 580974332 436416991 979931463 914668049 314512642 18400006 941843643 200823955 421184024 388371466 615854196 257390832 202561197 573457139 300665403 85859610 312094597 312219198 48982895 363766968 443686967 152932187 19466113 337306532 320070575 869614384 18538102 284025965 123311790 451733140 790654824 878397142 415441989 746039509 677531909 750501973 508771422 996944947 130555406 355847829 301546035 878732898 627623386 61285876 765048021 710126348 398380240 560402438 45126054 651839053 194177776 683317776 316786911 746839349 964695627 316875662 295650315 571301962 836725638 992878253 886272650 508130307 669700188 486929617 247495695 2549582 653901849 776995601 906189091 322172938 381406239 17027254 240744351 734155150 738593381 931803072 342863670 866761505 891955187 551547233 490175977 714302079 471917927 356783743 358573200 424698970 782906739 284419638 614032728 514749143 119772508 572821588 665110592 289265677 278968189 811782108 14960539 459676298 305067458 951529860 39366289 327109581 727647789 789795894 352662941 60854477 593742677 42486162 534674704 826836592 514303202 205310571 883160461 46332949 133445138 415527750 901743243 261053451 479984696 936368350 799637718 88998935 447397175 707819170 591120655 372088818 559391243 839884085 482057767 331170761 202098496 232861934 56230376 703914171 847312761 13365846 717604204 430133599 448519147 993645740 898518947 432187963 36553951 954899044 69997010 944506446 52378675 61489571 955809807 443494279 20241370 966379205 710408134 839070027 99366487 158253272 348742711 791084787 314960710 78267934 188127989 659471435 171737556 708092047 736132200 13902869 766507330 230453332 562781772 989360772 685827941 531453005 28840496 460374465 341427497 272531596 930917368 700973674 324616969 98910936 336036444 28078606 584244121 988057899 95363431 689155506 175221757 467215413 933662456 663596623 715882095 172851670 875709764 686319441 758474940 778376104 958184786 290343706 956199623 767583602 19191165 180959101 197720325 273946038 84260342 665337411 231147776 130194468 484205888 393933737 542258645 243430949 421471410 37914848 89979573 945185105 270883065 302626956 930025319 247074297 658296979 299641158 45483205 533865886 582980692 339978266 640815418 650768759 95793125 296576265 126509387 266575088 757357120 163415944 262738955 992944677 24898614 45244160 16322981 109695595 606985961 472629068 325720533 72949448 559268434 144151358 449176175 229369462 709892540 909343514 280051159 107811684 843618375 542808344 397414280 455699125 971800934 132518886 326561934 175629118 772428641 864584485 513909771 853272588 473337812 335340007 762800565 191819996 906049070 197697336 414856278 735383714 257069107 814164626 391563339 416556547 291531899 44466278 654301702 126425562 126705904 335424666 999332493 255745974 921042772 810168070 612969464 121645147 502113721 261074934 310266358 175163965 199806727 684305067 233819209 404809224 350628217 216244186 734828869 996925722 674690848 872001579 959450709 959004167 789701215 837566651 594710134 101425941 864191597 218484122 904724667 948202685 302433238 251168846 933397703 646926384 57976570 212630095 313924438 123269584 62487693 904649097 514216116 97951666 973444117 919979229 393959236 678556707 249690735 725343391 772644346 224379936 413454923 890206489 412026593 336649692 745245355 96309511 186685335 185976126 121223016 587057178 259545548 144212576 279783341 925440885 526936519 259256849 684833914 900362291 747973345 115962964 325892898 446491615 59033095 537898719 711828941 906070266 936845884 568843165 756780535 268432760 209201941 72932653 176918767 564693315 711452987 793520480 728749145 471321271 266392300 636854718 991814829 311983908 57219195 448521218 797100469 248532304 128533196 422746778 156734227 87634418 323516377 413622568 630021305 970357816 976413999 848093443 346396526 748552258 592860273 895746999 551839056 190529444 648642004 184722304 585654349 467968488 752841378 806900179 194614952 949404938 740372407 807358934 313792891 110615034 399060999 920580323 954990895 527218973 371602198 60002569 838821893 198785229 119459198 57283467 172775568 433178580 58676077 713989471 544678969 524283893 198195492 728092079 442256314 907939940 962633593 138692188 338048419 856275528 5045846 985021558 490973401 856914240 617814328 954132677 988162834 781073883 314572208 8653379 563881306 36684830 819277797 282825888 739344016 467937795 294358289 402268861 228227049 920577524 111724032 127616817 467585901 549672276 207116692 435576519 667499637 456418038 47483715 641508094 153544756 133877156 505089943 325357704 202655786 611061401 174783149 576388043 900443826 125491719 683631287 853982051 251455862 516712339 581571194 306992798 84869621 549258964 927338960 890347518 481303556 500473303 554817576 577813435 340790858 723764638 131031297 137410111 551430338 313201820 26575986 550038184 179910461 141987130 930921381 8620873 457396189 335038550 660801368 405932585 576273820 211893183 458171483 620559746 479983299 962221242 129585172 913284675 472505715 237798016 150968062 916788367 864427039 763019965 693120293 891262524 47205904 936111123 684985515 585118037 557154272 849655445 176804935 418109080 156130303 672760396 905869249 266570233 23544626 769612726 247057527 97710365 152451342 176308290 553627100 853524960 519073921 950133973 752383987 454151888 310436426 769715784 598056920 788412335 741839228 984239591 588333623 539328500 409425919 740975091 161344467 135722827 629308175 613079585 475689985 798890001 305053627 708516890 410667818 336297945 465019751 682151929 778176333 739854825 692384330 289725648 175165050 763745725 97243121 256070435 386271064 578079619 985202106 606388074 450181024 549976734 521181018 646380692 705159839 14801956 75664216 830585983 107477432 973817184 464043407 540738177 567592672 986581072 561678768 480477154 783289632 423553063 910916030 134058591 351032087 63368141 607867536 420935337 240319861 967658586 595207762 843450596 902333825 896095134 837946116 261304617 382533012 512579741 707656954 35717124 177825692 377350667 838348122 913319670 573795738 540000468 956753569 155190516 672075300 393225367 704415006 753175270 196359396 86674981 423464310 314924073 290689815 628587015 3151134 442751246 614227982 489823478 237676260 672727896 989948336 982406241 711014247 329431746 888714998 834785514 666864026 178997111 205879918 990621929 889449797 26664088 370828474 780064999 286163844 229053626 244606734 476291621 849714502 458066021 522306997 553630483 708893135 98904214 419188363 393094105 953000246 560173885 482554756 118923473 571068136 415106496 804681509 755598090 523792931 287885175 256336646 710872263 122160252 760310317 515649110 928494590 884784730 412386981 848449110 85039322 307831672 490434835 434185437 130549306 67827559 817650591 694176978 303004719 85868041 624576742 392726198 464017538 361382935 241157240 72109336 475709739 45787549 355165531 747241758 802858715 714754681 855523974 694749954 287594867 303458015 593244519 57027731 1123467 43574231 277224542 502145456 747357164 192906685 636888384 49556689 143827478 367334081 835365845 67325310 580489403 759173989 276445273 169008341 756939586 523952898 425773567 538391048 813092677 463197763 681573225 994776797 148027667 152933799 949391665 17186348 251954223 899847171 292493412 574006885 26511311 377550078 464079106 557314055 586351453 271479700 986621055 296739882 461741306 501312148 452848709 189675254 418558966 485655842 805023280 419747370 191400281 677594421 776048400 881136534 743930462 169536538 188134699 661269921 410128114 953885935 653826744 513307075 173088313 822423849 970184292 457232652 632382218 347312911 877957585 291106972 962725486 421564476 832605203 200500265 676589605 56423457 510762033 647907452 384661280 201613952 887728554 414100980 275378184 307720690 255407853 261513473 691925942 65711714 720274399 9769642 980861881 551451024 721649241 745819400 109623507 332882832 678795944 987935176 516322172 363809608 786886668 375985837 440198238 957635829 758146873 467518476 661476567 478733990 481817816 544254799 774737786 433560256 123324935 514638707 472244366 832498808 823843029 384085385 250019981 752395868 672113863 159925048 599232167 784579275 968399702 988860729 782240573 66049656 947199087 577338842 83733606 181356779 412657393 446827900 459819117 829198079 711094578 731005717 116448848 229076837 335199611 260733103 487056451 731568928 179738759 426543079 998251051 695014920 511775752 522937967 489076772 895660359 475130658 647016076 137667836 437905374 929294062 838720408 111116981 523349281 477871353 790051969 577814790 114694967 311574466 10313801 192026587 674129307 69629247 274674308 290601937 687749534 955036505 167638493 705631419 219231458 162414699 203676817 789964320 732949984 425253319 717749490 873073082 110241379 87704625 515453413 42853368 684412939 277563490 786903908 402668669 789826764 758252934 722675965 56783519 699865964 965819838 45172306 499905000 698181640 111475359 224013207 449270425 850103439 405234098 416397847 703259682 246659397 931457266 397748912 802815403 80331586 325395793 732133458 407496335 155848945 648582963 10363523 456603355 860104849 551318256 597645790 697466324 683827895 378641238 63346319 590133870 207740618 979194918 357784793 596310997 337842054 979655827 328117136 811267560 211659130 973147078 803834527 821414329 976590730 770979164 19192708 737793038 523033965 973747174 902908367 869083107 711360048 870023016 137506215 90858726 292632241 347716570 434757188 972040186 257999396 582675370 139223158 494675892 285314194 98131512 508142365 923664609 569480021 71869017 430866350 634629886 188310430 458511061 220343477 152157887 792133359 281114345 150624333 444548745 679546785 235379910 664274089 669794039 560583520 262497296 40310415 119871320 881032617 894060127 608533976 971289647 104737875 800363969 337276914 955920818 788302339 481861942 404065374 364858956 672243382 381045043 279869234 450330396 461213243 642243616 277935511 383355508 137168566 887079130 639866956 983726682 551407391 900588849 911701025 345368330 510171073 572138091 529046653 514086257 308198075 222380992 768881625 331341236 881290882 534207196 935758403 890206631 852083805 644483167 647770076 787413847 612521192 108893792 176004954 658123649 227664530 431658214 909661831 170557976 583938079 271411822 921010880 279847107 30569254 72418920 981361014 891122524 867336851 751145402 857384112 477959282 831227687 230436667 676324232 401414088 415754739 625877049 835014826 350062804 520326369 269872372 379866328 760854337 842103595 743126304 587433832 259196269 710797282 67436647 367053508 967151851 589981800 227709157 808360169 758507779 418201846 353235370 354172905 479194925 171874071 124365116 307915369 178841498 534565931 776462866 310776355 505876907 602458085 339396890 839695461 931081335 186212045 583398452 521370257 205418314 762478783 250393268 74525339 137462816 339663211 94999012 189828494 881623086 889311955 812961663 113522695 450003034 806416847 567888952 829278392 104374718 18549900 980376625 57585383 738580009 374652169 729624452 102325484 626914461 911999896 986053822 908705974 338456018 159304547 622092126 282064455 658699442 987285221 702770779 393767987 892251355 210106989 701637275 422983205 202195744 169516703 852095869 262500187 880822280 849858802 4513104 264238885 752081998 175086642 763059161 743634282 629777759 597865215 760144082 534422306 497259487 342985293 432706661 208724189 658286116 403248099 116457909 148213562 110249145 397162204 220920661 633311601 899947229 404047912 746631118 161371082 464709890 208637196 939060254 863957540 346594126 300187038 873466932 93186671 888428573 723624778 967303541 279318322 910528125 90684240 275274042 405408262 166254768 51061571 283494224 627489304 473380014 852856715 79712374 555730603 817483936 477517284 131764962 555492244 431101798 335875037 774794429 982814652 361099538 251278682 751841442 426347938 950315371 647505171 192293923 696739286 343774827 458608403 610482756 769046911 310644417 752444217 533011966 212053718 538801744 75595706 630389949 247927209 500322478 419666845 751354595 546773977 35733414 833150269 205107267 468152284 632242102 451049163 36047014 216411451 633426578 621830346 888744009 295577365 394433439 681956497 669793373 670372507 642503289 563955917 938637702 39680402 227779437 270625276 429835869 589448404 896233472 159123698 766986222 277530319 245504870 676915544 235225147 324803076 424701195 190383144 1720503 817830793 453453582 23233586 518543051 925797768 257744065 68944027 923703380 182603710 633110827 487979353 417135139 64173565 16736646 906391480 228179068 651183274 496980417 693059288 758137751 750891839 754331390 309221932 128575011 290780362 132091925 398675452 317434302 755406956 522090512 627260900 21096318 469642716 884486829 102674259 538595435 734250466 195918559 645101581 506787842 760944860 580841805 931474602 630354612 46216508 375753938 266398996 520692836 866607111 208445691 179118349 859278573 118197079 235961484 487795367 760672922 950039259 170227707 323779785 576244908 800236626 471258612 291258289 698213336 621662740 832632275 272660333 754222278 280393609 12153389 630484064 549672595 183733679 778892615 74670532 622660944 712668056 274519453 911457826 900984960 848638185 766021725 386026971 11183006 760074845 342169065 607115171 983716501 276591680 9574489 952267008 758302790 164564213 219457015 653581519 566349574 964568433 549240257 193864128 334461724 584414141 68015082 722569429 271914823 42470775 589298777 177909735 381289783 125964369 114801448 8372257 891730448 844713617 394929446 705431171 806009066 733495184 771031638 715650656 397294931 561949243 539609710 847407072 564932555 105129365 149969753 656522367 139371590 635807027 681439669 880827276 22626478 739989950 794281302 710223531 260785503 223348597 201461697 894861908 269580201 284316840 656321202 10612817 896324178 877987390 35455126 215544388 804090385 686877744 143564561 262848031 440291348 840469516 237751162 167923881 351955067 712822131 896514394 349205504 590053594 218951323 755010289 970028050 392096955 437780173 277338033 822697762 127061018 295651560 610125505 118542409 204507111 785974748 304350075 795260403 138275464 652542256 810893806 266023518 539198036 861297021 492342620 764936734 773548569 808191729 273110205 605145244 511943062 401461197 534569787 89169554 75570690 658083559 305935540 177742992 318134915 504597545 853727292 649866619 540754104 328297232 367676568 276560137 343695152 852957998 720893635 56372806 418608113 279619752 426821740 561163281 664507634 153446072 142730359 251083679 201255072 216508972 710899064 344872696 64078429 39227365 25494587 287187317 707772668 877831001 36675135 502724168 983898439 821901074 172887093 45008628 166809721 458724653 132472966 68063185 52336837 885359580 876067275 871576202 527078861 908334052 867729747 369970846 862345003 127385888 685996960 188015586 717973227 946772220 15705322 544758013 860438543 777598202 973688730 905320426 747628810 431402289 944705232 993203834 512542790 958359241 392177886 350555343 100357278 724498560 705567179 218760162 125914084 701098792 400464338 824565247 22791004 175629350 906255840 453591876 270057535 352894453 30758937 800530981 850634810 858329761 745798739 196137963 207485932 538619981 120419993 926354224 305522539 297479597 943083433 896232036 428489920 144694924 908503927 366262348 463137382 131135048 999645096 737004157 776698319 388203601 1408024 367724517 15695327 172631214 856170836 231083331 379215727 300611703 266134817 728268714 985473483 387675740 822309619 265773314 475507508 743807260 205539446 696084103 921660767 321272335 653351433 978464584 448929269 900223389 529238846 188993705 892093713 989287365 334564700 679358177 76124101 921490583 980125661 319430013 248196245 559853754 571510512 11463643 916739066 476418535 428764664 19620272 764247264 86459244 696865803 149124483 996376872 389843113 471852147 249032495 174484007 112331670 361737521 485087333 315369765 253843772 407817077 542137640 867945951 548405303 502698535 532321359 272407814 184172347 112292962 741289990 690758334 918628236 22704627 269445709 565734688 912541572 864902110 252790647 391589048 781947665 396600025 426125997 252384007 124279348 136349136 939677289 532829442 546475395 647253087 377138427 655936913 410359975 665395035 219501320 552975889 657508063 108774218 336126469 141924051 458895228 516527846 151023296 343608218 275756643 882631069 352942552 298865185 365196942 913080852 517660224 682034835 583847051 12980384 393408960 129836049 140748539 105192395 48073076 778446640 76680468 142962901 254281291 810012280 145316128 916996144 139341193 313645286 374742780 654798851 438873925 962148970 540343962 63998121 243931884 817278058 880068735 357041967 253218748 96174654 545991749 606363097 488643914 456246194 405122842 70404765 282861565 841539463 478835264 904720294 156782480 213999089 596252555 992631250 192605588 491966746 327599590 311656245 704792043 329692062 233155022 946176916 443472718 963071758 130763221 462048491 616766920 500071021 532143392 200265192 887267641 537272502 420490218 759046253 357732309 128265043 428593663 919515153 211448482 776360615 775570242 860724896 856532477 24708742 405043239 253760151 507112982 660989112 43409977 409888169 151358319 405690233 104544405 195329340 631543137 525196284 668139118 934674669 243054742 447747811 876372359 236487432 74058128 700534985 159710908 820160784 28474145 897766072 527716985 42527293 820380913 171929779 474304321 710389241 817634300 505939502 276589608 163822178 104137489 609060496 124887386 803217612 523503956 961591736 736101522 682995772 248120508 915375733 245377955 809606637 677824662 216241933 744857331 619827663 931390976 309072311 312163323 954151683 512422511 695543585 559338952 505290848 120381993 128120554 51658109 651403506 896048332 771642409 929913039 222105205 810552261 530677732 647995527 186579934 405982938 608064922 488621316 13103059 121996449 246199226 209797814 584747310 992708358 296091689 845363364 580678525 50709449 649512129 296458983 635560325 258684670 262172108 872464685 772719547 940443531 675643533 455973175 203680457 394330029 865334711 961978715 273063439 458955123 616852980 91754754 628661792 436136769 421459551 478137643 497794881 887157839 339862282 776795879 500192749 135548712 185895801 69064667 765613907 480877612 530565925 998476481 133746134 210211854 18178043 957733863 197002636 373570134 778981594 900095406 13212352 267729887 218766873 53146892 825889905 402769754 228947454 966286347 113109200 310610378 455880519 140292679 526779334 999017734 34354085 24342388 734831980 770870331 641738301 9172950 834606224 243147367 803797542 368526536 656832823 404215519 982413037 95390006 951145749 659702218 611078931 374254114 724330519 486061731 33768077 636297506 169499865 342615227 927280964 671053024 904385329 436848564 807538579 635306393 94570146 423778311 36783820 547318175 763234025 183346559 624114611 749544919 329997429 107954108 623182081 443645500 13286630 462623409 457218530 959566938 23651221 577233191 794891383 78488019 328307724 383520568 700243029 386704606 741811337 634424532 236406533 423895747 14550656 690033727 825831554 8305760 962851606 686294161 733024190 305278119 806544807 210154549 348792605 911486750 258653248 111390058 497063159 694982237 484996133 656788165 426773531 37568147 42098765 670607789 68558919 501358082 165778913 931678942 552818865 640495487 293549249 36867303 752666753 74085107 532969470 489710764 413916500 759100380 818324577 613662180 818992059 683841484 840179939 613253531 838736314 593610985 377024819 381707954 285883209 334514796 738628659 659771994 428153558 176913698 711029883 656902301 67182530 371511790 559766741 998307541 29138655 195442757 349410495 409951795 514466040 961449136 64470252 327147577 289498954 987448654 565232579 533446976 883108355 781140559 564747231 995789555 984623818 292998778 327086221 905572562 255647030 612729256 679128145 130193585 563713877 591541574 342954849 573588790 742737447 627323095 593931304 220850270 647047713 628501104 895525317 50875896 120371115 983721786 822830729 255925288 129636770 472933876 732985981 602067430 727548375 514400111 663517657 441608573 731894669 556114704 931940238 219884300 95234047 986137425 300200381 288543496 941613784 488688703 844614206 974501048 716202681 683005950 409958171 35667640 746796470 777531201 85881617 658976631 793871833 431569874 49356310 924880312 837554590 934709520 634008013 517641493 627114613 232098412 172869139 15570551 260265796 449233387 817136503 457935007 758360290 653570727 38873529 852350625 400145053 623469390 173557842 613306468 122602677 237967009 261193452 80575267 268775647 728605174 449811942 567027182 366801602 930299319 676717777 899369514 826646653 458175969 380875509 349435405 179550495 614451334 335717325 332266275 132234030 943006795 900322182 206037708 978321697 489601771 346079109 447691451 66366950 932668850 894759134 333960568 42083677 907795458 825094877 905019103 946454746 111836113 253742465 384105631 918969767 994977833 292275196 47925437 818480000 172322728 494900532 40094222 458971925 582046974 581475909 387450048 962491531 370840433 198454525 239652049 368772091 865261403 219575391 82457750 321175026 373744811 195496225 239559478 40331248 399379296 691033133 887233325 382097129 500255250 723743012 523365578 746518983 422876777 586782422 219359921 775477733 337136035 531900363 254672985 902332309 399412498 484041405 406660750 65365660 556150940 486776604 65464816 808305329 357289274 181581193 870021491 253382145 132605305 379588699 858179806 96190382 272056316 413926941 998642508 971844683 294069751 546475022 265514413 16620642 927540662 392138911 269061958 653733102 927550228 342472185 948257325 927146465 680052228 542302324 341017038 894657183 956193036 936704801 887092585 231202945 348311493 365482562 381379217 143925588 999205213 285431756 215327662 225548759 521289492 781505004 167236220 55860800 945695938 957061503 169979530 160960696 16609616 11983512 426070972 157329882 873611066 277153534 850118346 917990712 590049556 803373739 791153598 406656982 205407746 29101646 247197306 727593133 520958014 508529610 183809840 140487465 864266133 920319157 571018472 853048236 341324266 507583706 996782077 782543881 483659698 361158327 704220320 515372041 901274231 702650368 115404628 285061098 890573654 80933402 871046000 299481306 816953728 632562336 893499808 729561472 172771004 87609314 208322149 683392628 297753059 784246113 74021008 696512706 524520291 884502613 592261067 418511468 817936829 219424807 4558096 614508773 961800712 306219767 15251759 57995670 68586603 954054679 568266061 35041372 459362470 793788557 268435808 922295816 399467658 731603349 973349556 891365598 715756156 57242397 250191464 201659159 276486647 199166536 619819506 50897247 556357127 874466284 403799447 692301143 651308494 357108499 615951092 507349524 279646466 673922430 382987128 229401246 56235117 41444893 175560423 680559218 385802860 940780952 937017816 441662977 976238961 153884873 821623352 589313327 518030465 471887680 700324806 626372564 459490743 401144766 220300948 807092286 124079807 682745018 66995596 110880173 469453660 544730335 421770985 195968726 655717346 37395340 937534650 45549665 599727036 975169874 193618274 741036907 236335591 802876538 464870427 983288325 279910261 432644989 948416878 878007730 798228492 888221578 560540604 33696237 97569892 920322819 691822009 452575393 633899725 40467968 960802539 883681967 139522470 854650570 209000495 267898988 988127207 352581217 947734069 902850592 422226328 348904695 896135679 132240520 792694360 640181363 109600102 541426004 606449623 76170479 768765845 564060074 611940956 607950651 179197836 372806305 621297471 52754775 612613278 37989831 637709168 217655548 849075443 647738780 108342255 334459412 91579911 605400596 672563793 146141502 712297257 645935897 631514434 142687307 485992957 11597575 32365821 394533060 113171195 325736239 819301334 6024289 36682733 393137236 566513329 553426835 331996789 118946608 469883271 671728123 244388996 981926128 762461160 436115697 742406372 580577204 831830900 850616830 817429424 833584401 28279393 981759330 414178519 3321998 409793016 132459151 27542684 305333802 212984600 877472939 684110872 38233812 107658418 952209170 785662391 355738866 162817611 262260690 413359031 461572315 200832637 416011822 716672684 464750941 783267190 168748316 30825471 53340215 416530807 330994631 708820586 110816416 985910102 207234061 577548925 609994175 236800764 298099457 617244445 181382960 808491496 496938346 657014271 55339397 612180395 375888451 98356273 394270403 364207722 764442937 878472850 772397793 884647775 316170544 223792213 753414220 132167512 152920254 365217666 454740582 29440311 918546607 343312757 744659458 293814384 511781503 369889629 172202474 992694158 496300771 261725886 252936538 27694766 655849024 984849904 181170818 702404098 815728946 442080413 997762311 884064335 967441159 983937607 317197442 745675631 587810370 908212928 610341119 207450320 695794968 835212975 829119872 872172532 997830134 321167890 540579960 15479023 337490937 876084407 645814353 397184748 425399156 308120769 211640806 145430696 899409006 127598377 797961993 472300277 739825441 402338363 349753598 589944121 891553404 325325333 879621886 4532204 32834722 679099691 623377078 81873182 185757545 104900294 279792325 659189486 684313820 734785408 292247361 430346260 481814458 715062217 821720115 173291096 458536948 502618213 615055894 817154840 697532211 725933292 424421980 177971654 501560143 764032073 208321513 515739240 581674713 632052028 783029142 875676183 283425682 59498712 909028015 497432960 613764850 6808325 938222454 510001510 741826210 881890047 152835486 977436446 840142594 897799125 647903440 224647441 346664356 470508779 470144809 934647101 67599823 183904888 257524666 13113781 193033469 140430857 718327559 545730844 332106589 285357308 879177097 449616174 52050513 989836550 383659564 862529336 240538865 257009838 565932753 562081435 715137671 708740559 602283725 910915917 365638417 419859994 790745960 985150039 292442563 653610386 356370016 524512344 692523394 153094926 809814627 232163840 419548009 829323962 135678872 591554710 353064264 414168214 580598807 154776691 711080480 416285941 165744748 808049541 726546088 218427648 889444888 659093965 298144715 460052785 650160656 62344161 509314344 694271960 976679740 101847403 804494737 277820313 139343609 220046247 657094028 955013100 21549464 125212649 463069653 791183772 76753117 21957653 95521242 526670665 938166912 389927205 818182718 687212006 161612463 63408551 639790934 728024379 737895050 373256252 237761967 816696932 43665574 317878811 413962374 414932560 718297995 984037771 249158222 503548995 387384886 495373420 422327598 430128212 67330712 506029743 947638656 635479536 800962068 319737561 813162580 330787925 148924421 611246725 180432362 663688984 879266870 437762271 831054396 717896863 786534248 138896681 614740850 758628520 853444047 50291513 278915691 907523777 926874005 180647929 636951867 968143565 171648854 435293158 491904935 986350469 854210723 877388690 812417451 869706996 655108735 685343779 991783412 657706746 964767717 390768593 634888807 289790411 893012544 817171051 575923864 228360301 290303472 474266579 369128532 476021053 303156428 760091773 299681815 344239723 602320539 875103733 322565014 608215673 421812634 970923862 550435895 301332160 878031609 459318739 846940564 319868394 442429277 614870321 661464060 605942905 608836448 676401739 332359922 538299711 872407053 905072525 640888748 244175844 256981348 420610426 570542485 154756452 225132252 608465191 26678987 434857102 71794652 231963837 751541921 89979526 702103104 339518458 649925151 936783683 5955290 788596401 944066685 654887442 160411119 484074309 810905516 829743633 759068086 270985010 823489741 141287605 447294685 293873029 350055095 722697796 525434627 833886559 103916661 282560092 554301247 8689269 306375622 600792682 638986904 802918291 327202204 342637620 496187018 904018196 24449181 756351056 128832391 822312300 795515813 147245738 970313588 440031135 949382722 949500674 615837224 598777287 917394231 675021675 430803952 100866449 816047353 954645710 780603918 224245952 185035317 431478629 384326453 892724137 168202824 416395584 132756495 303069622 284473797 678688451 828317623 469150179 745433331 824355110 857253951 828430148 569949773 276344564 915404076 415687549 891362560 523478156 20190197 593070920 47653232 301087908 280341127 80495859 21786035 337067201 63795140 656382175 664833556 896639935 626341375 338779650 302288786 353357391 126773121 225420390 533599838 496637300 694067976 684890536 486620768 73447173 875940419 402875258 307516851 900713007 435224151 412000289 383847205 929162224 250617949 267749623 415369400 827199389 921066465 189476074 706714148 590392157 194718052 449811195 657016658 270241963 425440476 958142145 400738530 886366935 442962991 848856803 488782502 962618758 479901115 38974882 604477989 278663470 198095569 730376012 779307801 800498587 723468341 432655050 210060273 380178029 117189792 205380627 771250768 887003031 735063870 158828726 532927884 505169378 171817521 470592085 400662832 659703144 903769356 31604004 834819450 718382105 630853976 12923502 836574685 737208377 430054674 319107344 807647617 679891680 829825835 777521660 661361086 398939769 47318023 39465144 92175525 916712259 487459839 883513309 313410423 610404819 566192607 364516248 802077995 159739792 12796264 184432683 368704236 931419958 527307215 516970093 882649241 30002516 181192252 534366278 734806340 26440398 366216268 560281909 922804660 491632987 995874448 727447754 178985699 946624519 111345420 189180715 100514431 608324531 681593272 258287507 868970349 560242576 369100547 900539599 986376770 755845032 271550539 894183359 80821704 219984725 389183590 665461723 869786496 825864648 781116444 142194091 574950938 934705283 533728426 628114766 869620734 759564767 268333120 68339956 560670662 36867463 815532676 368277860 105539266 119241467 543018254 789739639 71765362 636707343 298428906 842449307 234885136 397615465 397831193 312968273 95321348 521137414 946743311 759243950 827453293 168951477 291552822 199733214 382628255 945414810 631294314 250518685 796015519 205052845 606481788 683444156 817087913 479938105 894561199 193546402 462436011 660502621 532559678 916338120 819332295 623532686 854369236 90865980 735194581 22694931 824531986 72545567 669273566 100948360 118968844 917355559 249286562 546569564 247648716 765331486 694449939 929224274 713534926 670944352 436960216 737926148 641268611 549086817 841288651 363183451 126566350 958450725 213329275 425980696 10592650 984773318 230961835 652843599 124623873 106815218 644842705 249012455 261960566 405511531 603659160 568744475 828613021 839261573 602830174 709656315 521618462 983293867 622884791 973891820 993511189 130790362 177426408 75930660 311109525 544780835 456447341 961407535 645827104 748336942 470872691 464693357 670445360 469308594 443956830 151754385 406305714 168326142 737418309 537609507 845997958 972728948 473860977 921415679 345767936 370042888 126956514 258409172 248305258 933972421 863265482 962853286 571437184 106553928 943884559 730834253 854413554 836696643 21639629 376384500 63536101 216370939 741587154 525382554 904905586 822623435 762097441 741383828 688639014 496249759 353558895 204217865 901180801 507873658 100895913 156567669 203911799 173152496 234285676 368001063 162314738 696595884 589328780 615695810 982905165 332467436 693268622 514288832 856954074 967672320 549495341 116119530 158922334 508332238 914448856 255426017 65779600 869008465 56897074 689034649 863287453 21845269 163660178 426318552 954180775 938323901 245311617 656984764 933961281 207620478 66979390 847539762 999032309 73717409 249607997 860637312 71316670 629090052 934192035 593844156 793658510 154206362 896773068 206185810 335658697 599866855 988267718 735386241 904826568 425631364 400560851 711692511 337216088 185998753 262591467 290870993 177818680 814573694 294438967 173177876 179769502 284205809 674989207 627168311 961917875 648018915 883582749 175992606 186913298 108826067 841110928 783676801 420654925 193586001 331861482 142899562 938183272 685573508 660754139 411574459 238244956 625822885 683262019 579454886 279170710 977675906 417785787 320510259 723612021 756834556 680903437 487751613 147755215 18056841 881880760 200863605 737558636 897242290 257340525 122052830 143560842 620677270 65369492 820256079 583409240 455368550 206215624 900103028 972329083 911258855 596123991 341657549 8286603 705148915 90332099 707528494 892383383 153750264 648448579 570984254 706015645 784413815 110104131 434103544 822435859 490304390 378728927 209052972 554404705 761981519 259560556 967862015 363553124 885852303 984043248 843486311 427396333 966872599 626412197 517463216 337292352 517764431 144326522 526743289 151713174 800151982 824091282 984716472 249480091 485944899 214831810 838282802 139966960 786417199 288755479 559284996 320540586 689734441 533589838 831704733 896829393 984784888 893457499 733196993 148945378 962100989 507084515 542211591 101683278 397127846 739621313 566141020 706549497 933579260 812619396 52433279 51893691 463556886 322222575 922211714 41529058 336499107 961221241 181203279 170385838 827026277 372018379 593435937 791994068 35182256 25622596 485423879 659380988 812627183 341646712 219384164 256005443 444713760 69743277 705267057 244985786 110733907 552392284 333049786 638702053 558309422 780826550 290747037 836908348 299093356 148927261 980134094 918529965 911135321 550469798 302323670 738853400 336296792 472389790 878549647 758966482 222132573 775684610 871867306 915069987 821392500 263599365 822589481 522385608 15209016 496064910 737266149 268641905 936676956 590039479 327194633 254423620 421124390 418102351 371406229 13021528 80812015 868623705 526797788 6759739 192957860 663266955 196210438 879389293 964700488 276158928 50915471 916822243 869868656 899521478 189458886 750552709 418895301 769510465 523965007 851020207 263012230 809935558 874014369 677862324 308666883 324944657 757392009 162297686 628589091 762038160 62565286 136699728 77876703 986810853 670830058 195034828 675394244 90460519 955520031 279689197 959817845 493551010 651258976 727467079 857972007 443430098 692792475 759033186 843207204 329395820 978324246 757463354 168753225 494469526 409354471 955182786 2321543 837449130 129606267 924263004 487402597 340937911 243601936 66638946 975316604 813222912 975179322 842470305 648300794 784089211 408662626 45713369 839504416 729480530 282640194 666513470 339235012 707731046 902840682 630187514 821446352 566471879 708258751 43756200 205849537 73477437 520096758 721427163 671393576 383355074 889475357 119144085 363801901 73534214 415565331 593606096 56606983 378591978 684236299 49679097 608823173 3931397 551989517 734748015 624865672 872823842 253732469 951307785 945112198 787499456 107612018 593357709 338526985 954751121 279291784 165276474 914800942 989407995 896904463 23200063 210153255 634208154 304070577 110595393 710784441 670654396 792520944 306501849 586320063 193248739 312199838 501211156 267597733 143479367 86534498 754230257 853579757 818935634 948222266 487103206 724204974 560399906 476843508 137637212 4881424 314441994 633193907 785607726 623327185 861229073 130538864 410384174 843398595 335796081 555157879 411624353 566267211 519873561 808986086 775985342 77058788 542318124 25966385 435760178 106342554 322704768 784811169 744003742 486272656 497676832 533478096 631238167 657743226 328339658 812436014 355029670 890599715 748159346 172139391 928255686 556370153 86984125 622648923 768378345 435498556 42849671 191310253 988243187 911427874 247467870 85632565 101468861 995694774 430214404 513400070 806164627 686557605 311942640 794345480 686201527 36445359 85830606 892771447 829278940 377530668 914376443 144008546 214317739 988667780 167069450 904621101 115426881 46131126 130293057 321210639 68995247 954317266 642861340 740307349 836999801 649725567 913097929 221145373 20314648 73097590 856254891 56191836 697337464 204103172 710691544 557369049 417662842 346687884 596445083 950993775 932981363 47190019 694855154 2990799 636368044 283203187 716999952 387395323 585135072 852687224 230475228 141417165 259939008 325002694 425536369 625540206 485687154 403039905 496446876 567512031 388552206 783189091 78223201 678033779 406433056 427617529 317714295 805208659 258954281 632128102 649551559 211875065 458000414 475110719 266668273 169426869 176559079 303690542 469391046 621618475 205808865 283031408 867413199 707143379 868972381 400379734 7019973 805524344 885423391 997160648 696901399 348480954 181002207 658697917 833756007 857120908 657694155 816803780 552972045 633747894 161910275 78282878 652948114 692330068 275766044 395215393 123554103 110873941 640312734 952476919 472604012 966172157 3428486 611723997 20940121 321100387 99489733 752980420 738617688 803896308 670620862 593564212 345761912 159465454 841832652 139609028 38072572 884939750 360538042 842293155 303180506 101926978 379324489 134285074 827214909 385248960 361092270 339167208 824419844 983503085 840837393 274140429 497099328 741845167 419921422 821499647 862887098 350461628 284322104 651462224 231501162 448961824 415942545 232761893 540673793 49850811 534460948 558686905 71638880 333510849 950045740 588425176 89446943 712131896 66857530 869994340 440724743 59163517 125820946 768899540 288194200 560897471 584054654 473398960 153022596 26547843 475422906 146548502 845020210 634196254 435677430 427509816 660874556 154357822 257515736 142932956 932195313 183185506 392074999 661819099 706587092 544338525 600302689 482557346 492216859 664018903 617978133 254161076 771393584 966297036 499055754 352863525 493339188 291505419 287143463 413612320 239492983 73599672 293019080 779984483 230800641 276367050 440129600 176868030 104785933 587804302 343933393 12406424 488833672 660672290 537958069 920758122 79830422 790141947 990016409 429034049 713913358 204742495 481004061 367819328 511016185 401490156 707022677 823172380 462672407 396763663 722726475 161360798 312924761 310913678 840397946 616577573 914580584 214638335 552206420 457362209 273422109 752315214 207689662 838520729 998746119 405530427 185647759 60377510 280213480 544152793 240471828 767186166 604362552 568230673 133685903 381458250 456150177 65575453 688054195 257874168 932133761 577230861 468089130 932670313 800094315 311561029 183726095 479360412 252230566 24118013 316118644 308112033 448398764 769429440 146272222 765939231 179451309 36194797 553819588 326224592 255349769 557493305 930927123 591194367 93271770 80153643 735441837 262833425 187837032 853880479 448208613 932070905 956287410 12801092 903663108 934064577 572486892 171388446 880105416 599025672 210566651 914625540 532678112 308796543 632664827 936320803 47965041 858069355 834855098 56189561 527760788 235947558 554540346 892252507 782271957 603534750 764919346 381622255 351719606 660747477 174057870 545314739 935140394 901183839 416801259 92938228 112981018 733918695 949403420 819739224 306765027 164119722 648713384 819844437 546790358 613931002 607903305 293008567 839218103 863075516 728740462 472142878 428410687 67387627 250674362 159151485 807103386 377602579 146914947 364831645 232317162 81672662 46920531 516444824 233432258 555598955 302236523 321373278 195709099 947743002 686272571 377488691 577175202 451245761 372014827 310237231 694347160 86559826 530652374 750263741 744616433 714431826 589037577 563938332 803108358 489564 78150089 901939169 277807267 88528284 693448458 706790003 268953481 408655189 706621688 583337102 850924525 730602075 828169074 551920321 712347383 359758490 944618890 637090287 606904388 544582541 633049606 141971410 164590693 403329735 705283042 761373555 428738398 205937774 769812172 991741876 81041192 454144443 259259303 48065478 292724783 235574651 140327688 464805811 164516308 228299921 399182780 357400789 391009004 345377393 326495552 88106077 298254911 378603431 752817735 71416781 168932106 626374734 230731064 309033342 902260605 11326106 653450414 469629723 522472254 138557774 814725110 507407396 708667877 119027270 596919188 594069612 208526206 541390575 152589758 839793820 456466698 459634890 213289183 312288942 665114365 207431149 958501910 899403890 76717506 683453313 273424309 948930060 799218738 642224709 226455490 303212148 194572833 930647305 763554425 261982197 494008018 754696500 166335175 496557230 653917565 979890495 922623697 967381268 186795472 425517368 224284267 17021550 979547755 666032960 615405986 953847128 576501603 7428621 707217203 419870784 124736191 104855913 752940817 191272940 42431742 235744433 734059235 625987059 588429712 735341911 914861699 833680703 79637848 830811488 612954240 298616977 218025777 791605734 272641181 74459901 850574949 348971927 837072464 614866025 980186423 53471540 274723140 717689363 390024027 472812051 273363927 924668680 120191097 865923742 338409884 434212014 431943341 963111634 574208475 127458107 692531978 799187137 381263372 684069947 96002066 910112016 833143904 464472846 114605120 363285881 645996088 933462375 671550078 281727819 293733035 395399118 693681327 438666213 809772805 218980895 257690662 373181758 43610946 39759369 847412781 607774304 499005591 515834256 62156416 869489640 270451690 254898572 280483279 533935752 516268117 166168104 860345407 626874246 712409511 967433571 600549354 793586490 392168162 138472850 837208410 738155412 583300286 57819612 608966674 326277267 217484837 669152445 678839557 483500751 706619573 262143620 705147165 161911280 140606785 236497364 16225205 377871156 403504208 300688423 245657888 914998765 361173661 805605446 347438368 748726785 253460373 899572946 86292847 884989032 962161628 45953727 306905658 813968306 277834696 168690643 535699616 156947583 669512164 502609708 468905271 480402948 595210607 775067575 591447176 218939020 109347547 857570490 170083726 419281397 707335758 45869130 996259899 453344815 515066916 347190230 445027316 355122625 872434539 918913178 436039696 154043972 722220133 839454253 49307228 266852581 78492938 371462388 918732185 151300327 972918659 771740332 275944445 194339871 164098736 918553828 191098286 906898806 634296483 521228160 964841802 223712107 378265891 958369080 219777634 881470094 633922602 978331158 386141179 200818182 863829607 410059772 12189451 509876236 364739517 325578012 963774210 773952622 107300802 550805630 525878334 530863373 753975361 839013501 954330773 636050015 760819640 883484490 412787152 815821806 837032411 948642152 289760298 868808918 365983759 625944110 592592085 810748491 884512752 480157256 258838645 7937041 407785419 510775350 532362147 940841218 527050533 439502028 858101611 241190284 643636530 782431153 402028494 637452336 30933854 192596448 865260097 639188996 823560136 658475049 483988524 53914418 150222786 570833329 171181420 281419639 252996179 780558957 734844626 838011045 398316213 466003371 34474658 335917857 528546007 949027466 547990293 152360037 192674779 485035646 634126551 707037567 820043929 717962701 76054921 600311697 772623899 162554900 546918976 671665743 197718047 88833730 568622084 713809028 719632792 621865883 204768338 920961677 620075309 571040566 404538779 81772764 236415929 692817280 311543747 307744374 582603977 538373687 551122082 687741814 179058977 260819312 365501575 206506376 813970231 973441554 726427824 304248430 699916726 477653593 299412946 463209599 937842685 262120531 214146199 404204835 49887390 3351654 348989467 531192152 881404895 60789704 198110831 418973232 468607036 959488774 58636055 135218001 522673891 990908542 502721419 478034291 19692598 990353124 164234681 163933414 374254157 15262145 52483201 186934281 410156401 654957039 998652984 335844820 959832226 748482079 981265190 553706063 336571411 678636883 723121672 98960664 194773416 172328292 499272334 471939042 902072703 753894269 389913054 309480176 614526564 137263262 390206735 226181022 56839771 562674714 197591471 138859225 267160858 628510745 694336062 683382177 479615628 938075671 443556017 303281550 933871439 791278435 947375344 729454921 460298551 522243489 470643544 189888782 481727433 874980680 993686329 249164593 440396481 115074597 691902808 397151381 737113740 139074006 821141103 321748278 662926030 52941392 594418089 777115297 173152478 987908186 615136038 816265847 295972421 981114896 368495229 985299694 568740163 730299744 856297781 511322447 385088842 404025488 21530954 878503033 341664641 398162102 764540335 142818653 74066754 180244542 293534406 96173440 678792860 634553705 609390825 881294204 434192593 337909448 118255333 157181822 942509785 945660357 61207162 796164554 761244638 792059162 840208604 521245491 792186814 65244503 866983733 578838947 727309197 788832096 551610145 82408089 418787856 710127341 681580336 699686310 298234946 748990729 184374119 885218031 717355986 166093460 114518463 622425518 336767908 981392577 447575717 866917041 908193356 228043160 912671096 678160089 941384854 436302965 126531343 221080477 985528833 367948423 577605168 765873029 903385406 404573522 143930906 643669167 481004214 195551534 499696380 928705868 292745986 362976197 303214203 521226788 601705328 195673241 958102576 509164302 360095365 899449211 453895208 309244793 875117686 763035925 645093218 165164263 486298029 610639714 822437973 88394604 761492298 999062064 729070951 979124275 714693023 633395109 84200823 152884729 900470963 174949047 645971540 621175184 440818881 765584306 56857923 678275678 146945206 881657527 758133117 255722203 122778294 512188471 338292398 884325142 408911511 876287355 460453752 309705009 20620388 151860512 259001326 660981217 46056667 422813587 885329433 635754223 539571184 528937369 396072566 639198137 627940680 986294474 312242294 668832689 878472383 983129617 89570045 284827869 235639522 595268654 600071908 77308502 291911542 907007540 732663672 313936585 430189551 970068491 751362808 314241273 129570809 250385647 473666330 904132666 726133235 913142255 476153734 527652088 783533423 47222895 527061594 11418414 384364980 770789030 745603748 399126768 23749692 603126305 330037995 763076833 957649206 387352126 606441895 24579261 12957189 181698226 757295556 765788113 792254911 973535748 664691492 470676862 448737198 118263311 386000154 480862649 200221139 456889476 761867503 919796622 646153054 334782821 399340128 811296665 594569527 753932683 713377822 112948875 286431353 610239778 907552845 765720491 387218673 439459880 687791877 492817746 689433507 287728881 187509972 286974318 261335365 110555814 325046586 881728512 75056323 448947649 31300908 855816094 761863609 136345234 161440658 643211761 441112828 274092989 884153290 385905720 68757266 375078586 612242978 375601092 420403380 375613012 663262817 905203834 322404691 695421739 16769599 837175124 978624401 392932914 390113256 72005344 545021380 286703921 97409149 120535487 526439030 955136324 571541650 940292903 260264167 257497434 623380657 84255586 813825929 995871414 439535062 169979981 450802819 780006770 872331250 513859034 555450928 482274039 730716777 136779918 731931549 762276999 15307923 532656643 44598542 99592116 526192702 73118568 450865273 316862181 196573738 26455548 603485705 727626200 975195788 411291030 793773212 926623258 12574092 672578336 435399750 486272913 53535687 398521623 790682828 110765811 173924557 126591501 244114986 554175052 963652004 46054696 885103374 903090556 377962307 497407648 525299034 992132279 366442264 642222660 980209317 686131971 294462339 555087862 423539387 433881789 22155864 675598378 200291865 624755220 201273697 154834539 675511410 832839053 951846618 369558487 542034732 726492797 529470963 797843870 222619620 237368210 335162194 452587398 378049766 521793867 698739598 245168234 920242613 251096187 964895669 181879478 557581193 433644234 784888263 559005933 511978444 811570996 443332408 75244068 100840092 578177160 881068402 572540548 477747021 46825962 141506641 496906699 619967716 509205329 430372005 772263884 403501724 78752777 55454899 668815594 419406437 845970739 915045044 681889441 21901664 984818752 113894741 331993598 673786468 437129082 295353910 208133153 217715325 958130812 166313067 750667970 425224551 103313076 139250942 477040810 380784151 54857192 608426346 916716597 728852787 290716846 720509986 332547543 451531157 111361266 442843400 901191827 225956043 982050932 4420086 362741893 988854170 938916167 887661369 755474266 91203191 678171732 702036496 948838611 913562124 2665941 589641521 845552966 825001913 282734554 275925829 20957213 584144401 70515911 481773928 51223124 739201881 11698132 921398186 459801855 406057996 124477324 604325264 750736322 123301721 758383182 363099283 20878167 783190947 87664335 607366303 255015948 250652928 791004310 646723734 472070722 325251003 546763903 207796939 972598511 924648659 718608697 469248904 688662045 719597689 216602568 149540232 460551017 1282198 603847171 676060797 247142020 831804227 208251671 761828747 384596406 566706510 34725890 42974667 387262550 507000508 554102297 904726729 214084947 542085441 927353218 956727047 25278894 749875402 180625339 902661240 430403325 504947187 35748881 518107397 363626474 691856529 296248362 834496268 400439986 966367274 710265468 45563355 994220455 661750392 158500051 129848889 364705199 256829931 850831567 695986398 690813634 615605283 930544227 12787447 958959215 517404793 781573720 146754211 516114520 882960503 494231752 786025336 325450929 277812827 773374371 533585662 1653957 930842009 664951085 395209010 270009713 976694102 535995518 135774469 315312551 678158573 467535872 749669083 115814637 940915310 755519477 399515405 857554395 909371162 918778607 187750503 438330017 389843945 484117078 823759530 39485822 791645188 14085350 61409035 973999434 435443531 518765870 684657842 315276781 640937167 307200017 405455165 863973605 420296537 929641801 515019578 795160517 418723810 406887391 677027504 554703024 17538585 640710836 286224791 460603106 890661600 801829628 411328091 786918183 257334991 247344830 874267229 671228514 153324208 242996565 128395890 919513096 990980609 254279666 255417186 577150626 248185205 189373463 866365034 130434127 675843443 308336157 701643707 830711615 69168789 194986927 107406072 361150521 933755435 790597197 435729852 285086998 112372918 492715466 647766034 349751107 911914093 809147599 483257083 360924227 407193019 128012630 182624492 208909867 556348351 450332975 477247053 337589797 705895114 984156798 899871739 523131629 743814885 724295739 144486342 618080599 230196296 979852976 3269364 398657735 694333924 149841919 703003324 267589047 728933338 841403546 698952396 940267573 128481794 418028489 297386948 753303650 293882469 829338664 235770297 839640308 168295363 38503973 42811059 613926324 431739406 719913606 642230574 509461505 985244909 750005473 412464285 3944780 347297850 470184483 439005666 115582362 773521029 498390794 945682904 456064005 604097934 754365099 364418506 264116027 443462862 137522924 163974136 758365181 606595055 784226059 30973465 567123874 196395344 703080981 71397844 323622033 171661954 105582448 981770054 642818762 903259853 324236626 669464959 736728670 209852332 979801415 503551236 289444850 185590092 324671151 692189263 289441601 713710866 751308605 89464906 803345303 363732498 505569657 728384216 32621654 135667096 645218623 201132365 935737205 559571875 920439870 586759920 788176892 903837029 148415610 836250496 619879561 486818756 168417995 938357164 324024270 46184412 822517596 810137498 754664720 895544699 275787820 679063905 622932650 687666596 343550352 105580430 40751752 596011789 134516911 333299619 872806061 220253856 939113477 911958675 686729133 692845054 979726816 541204296 561243443 51771383 809994470 857476382 188139644 956987667 11974798 291461221 438656731 160974860 357200290 793917666 746457651 994220114 404636355 234664014 96504192 946324614 32445669 359359702 116886350 399511807 825747918 711624601 347924032 302408264 640330908 528246061 64594315 705110432 117751868 255773723 131986296 492817272 839101427 667984735 124249061 991682041 557964249 19043561 365420229 361437563 407631193 707094558 277252251 780881167 580316083 190414423 370799875 760102647 6827642 906332000 435847466 116321576 668624407 905335803 682859089 728544207 354419780 27348059 808897613 400112585 669832849 182508713 553745418 482332457 332219106 205300099 395847683 205593526 919028718 940910200 587631820 379596650 497092034 756259981 217252233 266429684 791595581 35812539 121700980 388903991 241473426 376473710 478056282 508989129 430497480 268417543 520586271 309540469 622686269 31210331 961710389 419161017 668981279 910462515 273037865 506424905 611591410 24013002 513814039 155280266 683953677 833717330 543897648 923662103 688835100 26726255 40248379 296672576 436202399 88496314 539581714 952184710 944764778 357493055 673903392 835654945 981363491 630971647 961102058 296047994 104192968 123445103 943787907 203357873 306776614 147615223 851611926 546269208 975248738 164579445 230695775 619642549 877278068 347562423 674440242 889692612 160825255 421301764 218729971 270662451 793613595 514569108 13839901 599126053 642091331 819672339 577768892 232822128 238545512 241281570 87860210 858759710 131053091 268215254 752489077 84480496 653675495 721750839 552314895 731400150 140902773 255948227 667900189 444725880 856527205 704161256 273380881 38169776 979933092 574078349 646109681 428771854 430949872 654435978 809008853 262097235 168256606 274981675 947764332 784464630 785394133 661181105 187189880 604831650 365885073 950452177 877666637 628654774 198832800 293630259 684220502 482905795 281282152 454269428 747777168 429194258 911465759 338053668 149102350 16134940 187664722 863634761 129744755 876545296 964708191 742136026 42749051 148908624 86518778 681895621 337349746 166626036 732503212 792471530 708897723 996394309 86240335 800835230 699038026 161403971 355277715 275908905 925161770 617456672 51049341 839870024 916769529 624387779 496080867 729460651 302687335 138317382 784969201 722713720 984612283 951720313 182232742 766886343 47410766 349544028 640326488 393892643 971992845 270311080 595226668 646648079 547444475 128802375 182214303 140937087 518679981 946515928 300727296 697559131 446319052 175949612 948735987 297216512 232820631 593710028 223724783 320875454 877223262 769628528 701363905 550503003 161454088 229384841 267739911 571734670 897290126 603799224 187422646 365264261 859924349 925918549 20214165 427669344 411106168 322990057 792193727 417789875 41865140 901505204 886802725 457538056 588466043 931577128 324077834 110454363 613069225 453869675 904165765 100142492 436719410 370512345 256084738 913239600 279137178 497627520 989179329 780493425 16338299 849268387 457091670 183080233 243668739 317643832 788570151 941326363 322802803 218270058 368251378 434481274 634614945 735810071 280391748 479039344 273993591 998819154 323859458 974419097 410269298 439779298 322710244 595995269 186278179 645343426 876546037 35881273 514183601 178785695 114672149 731586222 565331286 907023197 529008759 689088337 391731422 715443346 271523107 971473026 341466411 591872522 988306293 654559509 925659571 676798785 67797148 434097620 886238464 296323308 799214108 779701754 657472303 713207152 977148492 121866169 783707250 227420009 814675161 317259957 217927566 710023205 503855938 219974791 23352925 946133543 340265305 522667324 993777230 296489892 623997896 96447956 100527328 198953225 991871114 927047875 758479402 67740019 945807213 636011634 782429526 717211445 611825815 668849087 288608546 480840278 93098238 392104057 877252702 457079568 230248686 198680037 969964144 393338450 149521543 950143804 221251539 773456959 333986877 245295658 598604435 106714285 249941846 139732817 859513554 298671527 175607919 261786308 817365831 44101100 746010104 470487692 722280890 99935085 22090931 131459367 906826633 775822803 465504313 264721411 240798247 992263926 887645045 241892872 761140119 17769831 848348455 219281931 942704885 18255079 202580066 769912668 849036013 511978222 986240270 250596409 223912514 504742693 100969575 604153944 80525385 10395116 286151548 162420577 591552363 279583957 373753265 399651698 412127655 726181159 643307325 192805785 706600717 311249500 203916717 658425949 37345860 258668195 488688223 159652406 267707141 373162334 175105800 641155600 453475997 734487461 663558703 40203725 361576559 750201026 908309935 484768448 441002608 873275059 123582777 927132722 645635497 574248108 667960015 489822176 233996985 937728402 781487434 922077819 96519248 98154112 254685910 418302503 746938805 664778566 175667057 296131836 248061761 832142053 195579759 552705416 437989090 388317716 288752121 847267148 571335321 348566462 750167433 475140410 759375612 572607874 262900335 687447102 303023029 90623538 232833871 716223922 393204737 705249876 246342561 893481959 987819313 115949732 999073328 983340707 809663788 462440080 833518492 699708830 356309740 976644282 681282264 103866628 26859772 33016186 167021996 270045174 509945345 773600602 145601843 2178825 200255790 547777432 783751774 274634437 853187278 640021671 722657392 558879271 705817790 477366958 496151937 574980895 986683631 251812871 609180923 871127827 569004009 313090498 841673760 889698138 187448643 625133599 515164289 297331138 803674668 362326808 99388552 695328523 266284005 820508373 767191024 498334058 664303685 282315317 212837959 600740615 401298996 80126284 926644083 636933247 138461232 596786143 487003178 597798754 82444491 140359146 239766136 303966390 595851562 392851482 356302909 857078130 715322247 262964820 794500524 614826244 493971889 217565228 58631118 511370700 527427975 375149935 582359805 645750686 865025409 192319641 42645865 203321924 975627047 835113311 69115286 1694202 898738583 694366503 119289564 260553200 936157699 643159947 764777446 562234060 296626737 358522074 611654964 71258917 961200889 566268567 773587353 319946249 339331275 652827128 982720189 356969848 483522086 841589864 519253404 998234342 131071010 146984965 387874053 329787837 761199335 822204450 342885915 808994777 454855732 836421575 168081624 889669642 646406617 562974252 324363909 323299477 881754685 813128514 961694788 689314228 645173464 798688298 656697734 433765393 886048954 922137019 465820821 974041935 384341251 414765312 777391371 163646081 472486761 22270904 510190681 740952241 648900277 323106517 283869250 498640731 790847302 742817533 663347037 287161071 250883980 283552524 2664854 260141394 822535310 132718736 396576429 782401629 623025253 68918348 381379253 573377117 719584958 525074613 446283415 77382289 652648284 158840952 614664333 471058352 33819284 701406450 588250791 695341152 758073808 694544566 546090313 421582784 911581197 688128523 906800555 173001695 933006428 252165996 645685848 195257410 931705444 930405894 518889903 564576354 645196510 477662781 665706085 506897452 427081752 853767207 217602561 201213567 126206579 589907471 673050975 124529585 99496677 498397427 432867630 292970507 555973496 354180359 364275314 197728328 398090185 751367216 547499778 917329946 303844234 855632010 632479243 739066021 879054592 333898467 14945419 169363202 826798981 440563517 587606999 477384894 252865031 838994768 822059541 268842072 262135176 863409413 429977283 458688454 911808924 357981948 642994478 589815024 70335214 907236103 419862268 340100660 172279739 296530605 916875939 301890273 103154261 178228648 574022127 343780284 86092705 139513447 337559168 994287486 921193881 444675725 271759945 832271699 545455564 467021168 495847442 606137180 458755545 828667547 18451959 927702318 592823287 750074444 469132776 696326737 908792176 202321910 148709415 602106563 451780898 651977921 50990029 347752306 251732477 636979717 19006788 657386693 529101703 369610707 774803662 941739284 291958363 971874668 458375933 212603691 167810725 714641351 83182905 99615948 228314280 360024591 940254270 811597097 45830456 689232931 851203226 701490542 721225792 221838101 937337139 476053301 635781438 161329068 839669184 2324751 687126978 989347554 52683595 566974722 521717747 762243685 719715509 283529990 115667209 654852378 320254770 342758791 510170068 187135894 866508489 559116774 665560372 515921571 999661269 545382136 42066078 284427714 976442503 247685509 54374558 869948835 864802657 490708170 108629327 958358702 263895996 477175032 341562596 389127549 853527363 307456434 758723107 967349087 839080822 411857043 972413669 360811735 276828200 649334182 304337048 914119196 175536642 337782764 314956477 171036055 796983550 849611226 593980778 483123303 25319660 418589144 479434696 656001760 944131056 930354883 567361686 546958087 860381442 223985259 526918308 29264664 120629868 565767190 438784857 816745473 46669392 654152443 50097454 272147940 181498144 475993288 147512369 285473945 976711716 223798813 68903555 45197353 432715255 618696975 240525530 781334356 337443082 34134438 76386560 117625356 104930336 801234527 888573010 791162360 344031440 57238698 12686913 242049778 786134535 79484781 527898836 51511689 183007875 134007679 685237541 515775360 945266521 281743406 770942944 267808845 893825647 780470714 661038023 645555099 209558787 423879639 795223088 632070088 535909922 848444463 401308037 206168680 903633714 491856094 456563139 620754624 196036712 596593396 156655356 807185995 772860243 889266935 367508949 321119033 344452431 664969054 916454408 348362987 123594771 562321687 468239075 636866681 351263268 128002049 622314952 784506668 598403423 695002483 432002219 256312580 567570803 675464371 926399127 272619827 37303396 29266816 460740137 630809759 138102538 764370057 707479059 737435748 231280528 634971636 72631195 639943248 6166005 992908248 129836825 115892582 751535246 12321475 165459580 752284251 174008450 68440116 716446662 883110428 810188877 273188642 298589067 915893830 743913533 136160371 372171639 108370349 628744440 493216134 892649669 387777238 320130036 46550186 70042312 511371900 127822334 802069412 945040742 507520014 216510900 214362157 468706199 438275119 309023755 650548338 163090923 770418486 723357897 62385042 820670721 178982828 345793291 213296164 211857937 534948048 680405441 479527598 991705443 472247574 384470061 103100975 749987030 518037155 498859624 525971606 678385242 413695443 5502429 126836552 216071286 345474996 567270348 8359326 62892739 674490504 421330888 679647588 476998766 904486983 209491514 829391196 124967098 468396826 342838492 236559801 781323132 107468769 942374718 279193764 208349597 645898414 359789892 587827899 716951964 644587848 765778853 953800589 241482249 978600873 903344750 644203551 200986123 791623297 135250302 410598250 449043931 677556656 980122887 430084826 545143111 446980815 722632211 639225552 583178800 430783400 516948733 437529890 564263180 427834042 59667956 90508182 175363940 629703094 272543611 317060202 818996311 191178756 235866348 672767183 290012950 614517055 12462832 312600425 765504870 887121333 958082568 479440081 190384161 108419816 718270728 304126483 117794229 890606095 222029206 697135920 198707363 364804758 172918448 537263005 639948289 940061337 797730083 611437763 613071353 799081325 603826708 900657277 843475528 133103640 111137147 892607389 252815552 617825236 204106403 645714534 30326214 876147856 482295468 30304019 360287956 637140335 246557961 746046543 135698168 269764934 420387331 756302780 979089748 883138338 844978483 160613484 23580572 897980096 166236684 943766379 993697947 721085716 734867535 560662067 929006254 141489859 923169940 948935989 189552199 577947816 466091720 223744087 143166059 557861970 2965673 332405105 949031733 421589124 307296332 676006607 179482193 531275189 219067032 976437682 911663489 833557134 224498121 118043855 656612124 798396014 51418605 401165006 428233354 579005417 58297194 975999692 526344393 574831941 197131126 169242329 660179691 29821691 466999454 809649275 838675094 340381244 771632448 782278442 516692098 237837162 786932752 224041170 456893182 176843930 22161047 281938004 184491116 418842137 284744623 244231172 720650177 966392036 773958664 558889516 712071942 660853550 821565607 743336840 152548825 942349022 559621986 40765897 784214509 570044942 631360357 269852178 659087237 659017101 96680367 255841662 923484669 914550110 859704725 79584664 39195201 208658743 20444991 610968801 865551700 257948931 297457191 524109133 446399691 955353952 526384029 612002502 51585871 992459810 91480901 727361960 666408735 880455374 587709846 886966083 129785483 285179168 308850781 191550557 544882298 614162309 445228344 352271789 60102885 353417634 734787100 287215201 822181722 171382475 348179408 147975321 314078586 45259405 189309039 677177321 869266299 870442788 86731242 464853979 552970406 75736069 167978116 2506347 83478490 2082390 736287060 890792585 992550919 255367025 415312070 352682138 506170036 984598885 745088794 950037752 782026874 338349429 160304868 958045293 952099207 997709463 849428362 848150204 395458588 127255029 988128714 687583512 627754767 258519919 759394865 950104235 81990730 338887192 149137316 436433169 191661386 987628213 167520219 534933722 360066465 569556545 206943713 419072523 302224756 966307948 285080214 541774494 428360701 690584599 650454317 276967165 818291722 770456025 30891438 659401867 617184380 877345405 767790453 629173275 33621194 427719554 294887857 83010679 20681083 493231002 329889254 898106074 214995119 589160747 222954603 806462326 995770007 814055633 705302253 35079152 823039993 179752410 997404394 74738655 548539565 698567368 429088311 330647888 67552802 928474067 689023355 792524613 218111449 976067940 946198706 741205041 855208425 776946332 106075562 154808445 172280698 977383883 576620169 96462599 320162634 506234105 562993733 36605342 538029611 521922656 696552746 835288455 19528578 59492591 4245848 736418299 239791562 532759753 602610499 357021350 312346895 78449604 366322225 223071274 840118132 967291883 544727743 606225562 658464685 330580988 716999517 442251775 344088966 195970027 950935757 132270807 204962394 840827229 328973480 565163153 804667804 77611566 418296281 760218130 124790098 945821932 882960671 374379059 563814548 634847065 442829712 379238464 950229010 215879404 299642641 920853114 47009932 402850641 556115166 747935894 874702167 437373157 754053129 336258621 665479391 743267643 739590642 432318858 790713631 902364057 28344532 209996687 821213226 904533883 321712697 547988688 808481958 279450383 384126336 241203653 65613388 958706616 404973150 251189085 477063786 782128780 670388569 687449974 36849760 983542486 133992527 188387174 186804774 855298708 225480430 716701813 642578629 286079737 388282681 141871712 548898009 7327468 775693321 707275736 366165270 691784584 774338442 325411073 54298816 528333978 336373178 181129204 458030641 823905574 766379245 990459709 526984535 794410979 669430859 80198749 859869747 94246330 924627536 595110985 256830299 545968715 323025740 775542249 170769016 648181351 666262497 688578202 280043209 661206167 988398472 935706796 733785503 40590228 857473292 889043941 709346015 752640717 344852236 898643965 586800515 842120420 497780350 18787616 28956697 813973041 10635047 815537263 111219522 309798717 548409379 959438463 281543220 265068361 489930851 346430936 728566585 758580421 880032042 459350903 225231406 130925017 432719504 875919692 844308741 621125855 507643391 396316349 325467715 11554534 535779513 455154977 501044098 234927153 519043663 445310534 633588720 10685110 66575147 122640108 569487567 834593440 775822599 292895048 16490483 454675662 792937332 948381570 665508935 649486673 783657045 144621111 483738184 602691058 874264161 216141047 307726984 744535209 965701028 32549576 753809452 277435431 838813182 253161633 490625903 185349197 829269922 757756400 744053277 736223923 857516953 585447701 943676441 313969954 477743677 380834789 995896791 505594394 171659198 365150759 252315362 145756493 161860768 745450010 296878679 294650402 789326907 105485550 772615529 328447027 82206522 526110534 842428379 87882703 438136861 932444604 494411913 801934457 457022903 579023197 466555359 298832743 805686192 638513705 26343520 369329155 503435011 108552596 346126112 903969902 69401217 788945672 147137611 663410680 939787597 997617761 238462876 929283497 235008351 329982063 460853478 100487356 692100097 590375288 844961423 320696094 984927829 835101107 81273872 708918259 771803596 859431373 898563190 830853138 16206512 518106984 36536036 852725892 859531419 815397271 775999759 398105865 112178942 34927972 430656960 786993810 887220124 508895819 384162646 446540744 866065164 751315644 570676801 753321860 204506938 269557404 462910856 630805845 921910758 605260228 663415108 260078589 243866403 203656321 133503267 9257972 504697817 111772179 488508646 704065508 487999044 700717870 790666467 556651819 305370740 494508155 188939395 774631004 888629963 552531224 602889413 845632958 679387266 596445460 791816890 406984139 282920484 495150580 84987399 239409587 616879120 9956657 752760166 365120470 254630651 677016248 872578341 442321486 808445548 871774056 97479589 284643171 635535167 602217879 276992988 523848212 52894243 690005902 841993684 996188309 320795164 865249800 835234089 199159499 681653505 222946487 129163151 415611090 389818367 881605311 933949770 70797176 142503444 759385401 818442165 347692735 92718228 433397170 481295804 191588446 805439912 897866921 90046049 429272641 991884490 648048148 41021242 263164677 283062091 763652060 767296753 265991805 478619342 660392540 749721027 968228912 282489290 133242086 292259330 164521432 161334283 349048894 86295699 567713764 813892913 612198685 159353201 311998967 864400175 895454895 39970856 87747943 978744525 71278357 509461594 204954046 193919015 904999908 164668990 292963133 743143725 141321893 583162652 757330772 288386593 881173331 592487890 842743083 373693979 143985888 683772242 111047197 198020488 772231600 573912354 797439543 354368167 565155867 700760538 276199613 908118539 983018735 206209961 461091494 856215324 558088173 131049169 498710299 462891669 49292360 198511655 574297596 495503623 511436585 342620564 195977819 808008533 793205805 422042774 882673918 826952503 551543781 153864383 531904225 338597303 579145812 718316597 781772210 367632822 764375413 107597361 708347988 546771048 859127219 10229632 419729244 200441300 202028143 778022661 950098839 194994517 321164414 102392373 68214402 171492891 759562920 866491801 828031696 400052651 598118442 999614288 955813608 456458331 995864373 174557066 724310885 51194327 859745645 943363342 544360852 493002143 585024618 15245237 909570553 911679366 7182394 66534124 239891658 553017396 738918877 610814006 113919602 23740837 790734792 418621864 6503952 712846761 637284451 451887212 599261686 542019682 11905675 504770366 359913002 654317768 680187920 609166066 413202152 876425000 60082232 183913708 299364125 53543841 631443515 153368998 996219630 363755174 842305476 520483629 477214255 153618815 209051510 898149285 765134573 883853511 516563813 147198401 665021413 666246383 280710553 656019787 748149002 504953530 487172239 923818402 21816835 941601215 141525943 974649399 322630826 499559659 585441783 257732879 798889358 620753148 198280230 301313860 42313330 139105543 679418258 633886084 413391564 895845618 421402747 197302928 728331847 634961914 941674645 240201150 729954625 504106799 184859018 289125240 824943949 388776947 951771510 536734139 178347955 858044543 149176681 123058329 127727083 803116638 419165673 150641335 147736614 237565168 559556973 97391056 986373061 264617449 282840291 511913264 62907871 385496015 855916074 639793209 384221632 75782271 698401945 826204386 394731876 468403112 693545335 798753330 394667520 29591374 776752768 700564170 735729786 839700041 135048295 484303193 126134764 603397827 382000462 737606949 585004069 458485438 474994511 569146505 814533671 577477260 720778487 903825777 28250282 360703317 953872837 725671903 535251608 711532436 568121520 429285482 368057743 333156250 981296798 217499322 831110242 156135946 55226094 321291789 584706968 183065691 473619951 160682421 239678956 294520666 534897510 377926552 693834443 472567205 424851212 842611375 571934937 527163440 515403022 705718151 772986988 307005124 278989452 435375811 654793231 313745019 885690394 434179479 213954817 797523526 839715393 976942671 560060340 957818215 898415615 832171718 761403982 152313335 595590467 770127087 80804651 754278753 8715634 231390544 493050712 607834341 140348389 892222850 625665818 325127190 850162792 439163059 971398758 730749789 412786109 73724451 663885158 573203059 706159127 919322538 561375994 836712683 785034144 191015985 228103988 593999014 826609907 924411956 281584091 188677212 328710562 776951367 840652521 687181338 786341041 438261134 362479373 430157758 528479001 735455299 771672106 365339517 781619782 80556083 441400790 305354334 536293530 456199489 995412444 239143613 297196520 798419426 58281658 262891209 287684089 839338912 746402340 793655557 584353546 197402520 56248703 967974091 586303052 419450107 328384103 61502660 998807651 56116624 273785129 386877297 538070504 428000304 858058057 990132646 316603367 314701641 769559550 233582857 310358626 203678044 321141937 787256471 341953227 527844736 886763394 899243808 766258830 950552028 743914947 349603270 645876613 704390192 372183163 279760514 757803138 379918413 455217380 377893535 321452489 823739032 700731117 176544573 744437138 17657484 750669752 700132815 583374475 888702261 443465757 309451421 66867797 713578933 895805734 454333763 746035715 862245826 51871377 681108272 6607518 641932838 75469137 562390568 261988771 810308926 460755469 599472323 48084354 898143612 809459616 634606828 285099041 514048997 881645975 262383714 560118104 635030676 692174518 640197434 619837811 410289973 307426163 876466267 524246451 644121995 427854457 460051968 470087373 618296298 596632871 640506938 385376617 91228093 831779343 660092780 463558820 849540097 804618103 63098061 187067023 456487880 609354203 161942761 477280429 747701432 407603305 125429793 594471545 462481802 607800707 750602022 282877406 322395275 794871617 662345090 514389949 190985757 600397292 538165263 138198634 185039671 71367812 931967357 444871215 96295393 961108284 281989841 538943432 89184186 481448440 884437472 664490214 712004722 143433430 623625688 48354988 455093328 935624354 295621560 670367797 404217516 744321376 880569555 888332044 841564790 28210374 199154002 461941682 211209390 931411135 717477038 693631515 487093993 362742761 96958010 36762673 727867347 845120024 123418519 478277200 620029863 645381841 74590525 214461896 358378169 374171088 119103225 923273567 396498413 232112002 518461545 562216396 356235580 815506827 936444802 400235069 161220150 706560834 37349131 796674770 535114363 83179056 743073055 102745887 534778433 344461973 839930799 220537006 19354322 889796067 254643966 240287099 970631434 170857281 998414883 510004342 867625949 847146505 566368650 386641925 802437839 660995146 485116275 543848063 575419002 241587014 69651570 659218098 361455884 246275061 864921069 208599133 759975110 809865089 47706273 111646391 453595262 50109384 158076702 293610726 62812701 811459037 605424710 61902473 548429602 383828616 489904594 278209071 150462238 745432769 469509837 775349726 95391286 417575992 666451479 236501901 750031268 254033872 319285475 128546729 482137142 777744416 944101177 664453524 952424142 850862065 607196277 994410529 318779616 394635971 81216966 534010906 515865847 708550471 448690352 914595514 173994800 841177574 589135754 69210163 644801469 44020025 825188865 163668010 794389859 370387598 806910867 760817718 623994876 765628522 836222485 81854052 337181430 586915586 157584430 477805494 546676691 337252544 597264857 799635103 883788967 306531524 833191143 620974473 196609693 141559136 125846907 923951439 507084914 401194139 976713356 381883331 700735736 738047663 96286310 845263913 575996309 911201932 47493417 505876410 996590273 399928403 399182153 878239779 802789516 580907483 681457164 130611203 836321557 336849711 554446863 228825456 830943508 459856141 394891714 537915507 400120401 620002153 469583335 806427015 374793258 573342184 255462423 426794014 727784465 383192166 883046717 228912412 795945996 961693552 236750360 155550042 617600820 141682379 179950014 56612900 646790198 380333035 956992020 614181819 809280981 275721340 612316246 688009684 514978662 451601117 957606805 466354712 349642066 258112160 325206836 619152034 579051927 219344652 305928043 437790852 807055432 518831515 431543236 164742722 937597961 107870844 377349537 522932309 681430163 60786450 530307252 75083177 41929526 325142643 292779396 899423775 783319378 891789801 87525359 571055372 793075933 997125493 839767970 625621944 686938336 750830663 82522275 46325728 589656058 541704519 702746568 124923445 426922715 193370000 905301821 795648219 165208266 57475311 922009346 746013675 82604576 357701224 514663275 279661553 20414155 720588977 996809630 48227950 735421644 196582582 256257560 906356311 898576569 374751763 244917033 331591828 164220476 335006621 602094963 78221954 620508305 680235994 413933679 970972786 114769676 491956611 568053480 98666023 782925201 973863945 375831421 602973532 519406874 8460814 524028707 174840380 126399541 420067304 998186402 604763112 494097795 870530081 114110483 99922677 841365051 255438841 5497192 445902827 483693220 955803106 72842468 4124615 558864542 146802179 543855263 114016377 139528218 252223159 526295043 315777383 730823069 344092939 987236946 962152425 315212482 598588739 203650333 301296587 791586485 214798165 250075342 85298126 937712824 257854828 444503327 482032678 891099297 436319846 583066529 804088061 345321306 391814743 72977463 705368303 111487328 244989700 667639192 513797516 467008837 576939625 790918096 740546522 840814639 581541172 489498303 517953744 71387734 414323527 39870616 567343068 912394121 646244921 960933988 820231006 806233002 737768406 392665725 26221867 453049646 741171355 364366099 696426763 746148766 112331323 977751210 743789882 262955032 250549276 542513818 575474411 527829966 269848027 500631438 258881216 817178246 340210628 456925190 785561428 974006552 630247770 980744917 800919473 604876788 896859093 892019107 309231066 925781913 999264927 738015083 154750787 370840863 934439382 830858494 29727571 633063086 652233422 290375551 973837289 662555652 627100300 93025510 989389780 287227124 858418251 903755901 175454554 132112865 857646587 226884453 626227378 961368135 46800573 821324562 740887178 697543987 797430120 19151307 787882625 454553030 876610312 584749867 203297198 782709173 411094361 818644643 23313175 161444300 14001488 19021301 606920251 238364262 855251859 163047354 471424393 364301815 703969532 610266590 350425318 721842051 217404697 566016543 448084524 605585188 262843567 193669265 269951909 796307591 647034419 870005276 247189652 182680943 415646799 298589436 805814188 344410161 390561379 929630017 586824087 913762871 938057474 983639373 13932400 702247550 928211569 704966745 956479817 690258967 709877035 485603055 379572902 926470825 843220575 616356209 490693888 166509805 881984624 658669201 605409860 532042545 261055348 341642711 621786449 108385238 447453622 986753055 159771262 24604626 292025909 805617176 569986577 468259119 994743586 408092358 287652040 169966474 946810470 707663360 58927700 78391445 492564505 105794290 761762778 141787797 826866956 982158493 36401776 471815396 956010305 874420306 961717670 545699952 840840301 211646523 807935994 792068666 896279165 555823058 191360354 453408729 63044109 434917992 385675719 906483188 139087090 85651359 222120836 852075212 575328946 29858288 882253291 793445551 298199815 982387495 304139712 778704006 356933216 391596258 478866364 365924936 531365984 219235093 832235787 670477700 356470877 235558024 797513678 943005148 337251298 300796759 229296026 142908292 189972269 660542322 475703800 58387399 813323186 958189851 364944099 787615618 309921942 48187754 568376653 844094887 513844020 882893004 543890330 835220924 565820828 897177984 370496034 630763098 837403919 35333145 120609716 602384302 337473157 949965823 36162062 458888698 234400551 708652525 726817382 935744021 951261908 517555316 307797476 649508839 341372576 229847159 335938597 635051247 905825105 991614893 87714234 719237309 191269857 173823779 569526951 20675447 144417279 868563895 235791588 534719576 182057613 10224286 582800607 652762157 219436579 567479262 961314808 301463510 248592267 216726741 519397636 899913419 323335235 486969008 240907467 330041236 516744958 811542261 309080202 771725392 280903715 682894330 68404338 700050735 745511500 543674219 206428711 487995128 874542281 177920712 378044225 948333444 616432667 41966052 749977550 527924289 44153 141061991 131661518 546617008 135393358 786702669 236715702 252811494 984102073 716495206 173878766 422496271 921701387 935699924 696915283 299928295 496642125 83598223 836146870 86189631 519353271 144383204 664281434 532814718 792886074 297291762 138894458 407875869 609941751 54713132 848397249 421834026 955973830 849488858 369282000 535395270 948450480 328237207 310587579 91226535 968169845 959887828 814800524 546735255 679963911 509767252 138089919 345806322 722563853 71732142 758935492 402399532 542750561 123899599 536724353 20219977 367617171 824108149 814102989 690807907 179187811 438846388 583097334 361575464 423683658 895331957 233786428 388388442 896686578 937312242 957290579 310242893 335610298 543398716 139262949 177217132 816548147 741483957 175736078 20240052 762853797 985254806 796997854 875378998 147026571 994828906 409007067 679824026 453831698 713238929 197532796 360224919 949063583 137388735 38194095 259362940 741371462 61283962 85502804 517103531 707966291 890214047 290048703 783085080 111592645 845346525 550634298 296649934 529611214 716569912 474578048 732816490 403730260 794696328 516409156 445461918 188585587 269427447 328572840 927513519 220382969 188466823 413454278 55003896 66501609 335912330 595255851 572560741 664883705 438819112 159208535 623730425 651098643 46690780 166676798 739793992 186852824 966098935 657385930 839646973 150763032 534983196 380320598 778793046 727059291 858179522 620337716 942486947 173210203 209694646 296111145 484112074 628988040 733798038 385212140 473820358 105805443 488083286 878789802 242100771 789649571 52300223 677025925 911522180 905527667 674606827 86932752 543030814 730656817 833727435 528885460 706735674 572682577 548451233 327168719 526540215 457107705 887055494 711993072 133631109 331537794 7112677 217002652 318249771 295667197 254716158 546407212 845783873 188495020 660893540 189234797 401322999 430882180 699725183 817599774 95105165 931642034 321911563 383949685 26083033 481753363 119248792 453139867 121535428 442638010 490703624 310737451 400395213 878267758 847655443 285644983 858609028 520693033 22638278 633112131 835379216 902066842 405129471 640681928 818938794 118215076 451132659 463511218 244484128 871668701 941710249 788322659 556632403 351453456 27258237 259280814 908310969 171881403 930708126 276941660 175955163 771478418 631537551 241344682 642976216 358666746 126377385 970433225 152821729 501340814 766991256 382278749 374428347 200616862 707954650 507330047 377116480 349331115 849758020 748683963 71235550 438103789 330594684 334739091 564582678 769641933 651746175 627531002 728226302 610627435 695281693 498362201 501920448 441703193 365936760 102371725 927753497 676450781 510384777 710912615 272595674 919152883 579331483 36647979 873159275 510206537 3187406 76014353 961644867 793731842 58331541 271585224 464275057 10714612 71318072 178534382 581163286 647321641 634285139 670539929 800052457 284902242 872941909 942535377 541185713 586876559 508223234 767848467 602225359 152910936 829036018 95215824 52427697 716540823 823567888 487733995 508538976 897311196 71942427 423242815 574095091 214553576 509158184 602447127 959910681 506647090 69149470 746590900 230443668 164643685 628848952 529257931 140777912 428735200 452595591 604372740 13091312 479017268 352112750 911035772 854272570 980273322 889393956 771819844 341795750 324736955 602299445 882801631 273226202 721376150 585586689 880678088 548796817 250509469 350604092 346091498 694523671 560415976 366393709 192886310 600620239 579055296 104071535 296614353 346882478 327164709 466297842 103807795 828537277 862824009 578902010 217013001 295490714 129766931 286980447 506842371 881542135 724207773 122449228 220472903 435453978 715908279 69935809 272989164 189167196 856928353 802872593 718640512 136003498 709617492 320281700 458668419 862955783 333161850 136268854 579232233 11290120 455941490 645677526 402868892 948223830 399861005 37619944 96328184 218541872 948154836 206605796 910838606 794911206 748820351 749361813 758932833 489430623 718867071 783591066 605551339 750840468 974245493 858455528 69381401 369853459 653563576 828175174 509486603 88663676 907404500 998490831 791289173 585032199 576930054 626120820 592042113 25758717 450506433 163315320 537228171 725232443 691000619 93924338 591613795 435312818 999525280 917182798 434679407 902658025 269262894 52418252 226982662 383508345 99202584 12710656 613245430 815562640 151558740 302374224 299850494 422517871 207826445 968606329 799697749 210290924 975721761 952390923 147570722 681988337 374420131 682780136 265525505 628026363 535290202 984440009 191050372 781843867 578170433 158855353 405409456 949728249 41074437 247919768 917252476 73379404 903630474 914604953 716451157 753451875 817241958 774198724 585132957 349585439 685098085 484188789 989276455 345841142 528416515 108967643 711792829 397883250 776784373 731844730 94878619 233447600 782466976 56951209 416797169 96638434 618231968 190343701 765242212 859163085 641423427 362453820 820640653 79437900 569427724 356108019 984821880 694245067 232884016 463868385 571679527 89375948 11225372 474258433 38091277 670002790 778948589 335253796 360984980 317932737 719899638 977191789 857968791 284263579 364584766 131881427 460542184 1321158 362416127 621561506 256930251 538137767 599162664 670931962 972531321 22633657 523947740 544502351 569010847 838131464 716615921 250347751 863391452 723375031 893063538 734707295 361059654 891977082 435515678 710141735 819866086 644092956 199002598 757752321 557329207 146927867 723755891 773988486 643737259 218710407 42584477 500368801 232342310 229420998 387221749 212647441 268523393 665928915 833723196 491298027 3040520 883022171 783526890 265327127 332374525 206860830 490209448 235940558 977176595 529156724 608191958 122988066 141012723 834183877 177005318 686494070 359786682 319597328 863936895 621370114 230873209 908087653 958862011 867732048 239031988 315932779 942383849 732876994 531450852 228546523 705757035 334251017 164852469 208227074 22852953 873168047 819375560 323480899 692807677 167182991 741617074 373786771 435518293 13504855 238431227 229933564 753295509 922865933 898540129 79348250 583202466 383619207 401804178 629565345 433990295 863035889 846040501 82238421 451409988 377717067 513631970 825860368 341020330 240897257 613783973 4792127 407825536 865362929 185806719 651879525 164641457 148604128 368730469 610431255 491440348 952250886 111718463 320765183 821549011 328369669 576745322 389714778 381813276 190411350 897204023 657649017 857171571 43021764 210883434 473917252 466775622 628154094 891587003 264505266 79904823 121054409 351666776 111488338 233731230 165095196 218152033 668511429 666127877 417836291 234495595 426351937 648120234 400104813 180182782 707478800 184303104 589880222 586057495 857935375 705034030 638480814 513041575 130612272 678204814 988162311 784230161 365525496 357157423 188945642 511421360 437078273 281946964 370956011 786389583 736589945 917659891 117215089 715255727 676611490 706925367 604920887 428134916 915967056 801942783 384272590 766708088 355494254 375575133 109757209 879097511 173679993 875302167 967251407 855997218 344476931 932191529 205509372 168845292 288332593 108620608 887426688 898162688 291092542 141049153 925022350 811177672 334533622 771758272 982185519 343908007 117497403 964445065 454534077 115884401 630358916 875526171 977856360 972101358 68633433 244247080 114102196 971973979 799949016 435080983 620431865 771660776 721899827 548221058 660640482 617285434 268636720 30290104 362939630 203164139 639769256 943636796 574866163 604236549 381036296 117527364 326092950 113604235 180471251 515848763 227018963 812259825 180740125 96005183 316018299 793193118 711618065 999348899 287685809 144820337 606732653 384539759 689500525 195464249 342374401 238952667 181569529 516926524 936946740 484741592 959615350 6902449 530512767 700997767 476318040 987935814 350676719 488723391 349787110 344216218 372938151 87235211 393497787 708562628 579472220 620115114 594687816 913719242 594980055 501488398 978608463 931274027 498645111 719339101 647638377 391353686 729741996 824363891 703257474 232335921 314464381 103773150 896664920 871378835 271723011 962110049 598593279 678301129 592048364 242198897 584403295 630650901 316202233 925280699 38410420 304503594 77628032 758248092 657078030 556073906 712622314 537711783 686496975 620006088 611405110 272421411 368085295 783139966 722549876 401236875 28248763 454732376 757460044 354877452 521518034 413783504 999834485 759643146 660964647 344092880 140534845 704451483 830018626 479403066 885937928 736395018 569689599 726164580 161334985 909567317 323511565 812417940 35731850 19542704 67714159 570356361 561037034 27625216 296758271 951543026 947013274 32670305 546637542 986499572 244817631 831441313 824790054 262936744 191509267 728297154 152281872 401043610 762787876 882499964 225088462 463627339 117058836 623752120 670563802 133451184 404400503 335327766 176500869 62265522 110697976 607037032 939062129 567132588 309232852 856921653 125932311 776460272 107982941 411096887 799646531 957472322 372118392 112678877 807012242 733432155 91477024 826633162 137483259 127288935 49406945 800846420 477057347 655720840 654219357 140925190 879571335 292351569 894302667 984917534 590468790 186988107 248471411 152081167 182069525 176915827 188382259 58199809 738168761 139662522 370909949 929240908 426776848 276825220 633160534 896556545 840843097 317785386 628768217 230354017 817341735 256028536 580540594 542583651 131246562 960758063 367741476 183728178 808710725 937200004 390327043 809405101 983246561 544197023 552129851 201323494 928070297 228501789 426778183 257309348 23714084 271032463 22208442 492259808 313296271 279006201 599937466 773247819 211642552 979131731 675229056 112880583 504301524 871304972 482858457 961158634 145253097 995290242 242801576 579558526 192266069 819278474 413919842 206135044 984993349 26479087 356015248 295754796 555881791 748596715 573168208 251357278 488790681 171356335 993432021 739063860 411746815 234371041 4706275 877196541 28947697 884115225 456173139 959242044 752576834 526447203 614734485 595837736 224114586 640432320 266223657 434493226 794927093 837377700 152527653 128305249 949397538 649814649 738679986 718898977 872983622 251845403 682690959 566075247 125716310 84204635 879868557 749903751 561327008 376562556 913940752 67624535 54482755 885999545 199379861 147201025 340013746 848782013 329314342 268991069 379645237 154758441 415701223 46218612 441032551 672433425 599658637 249658374 717668793 108856959 942442210 445073925 568450286 422229999 405790019 83983128 708151965 408623314 654242594 446053145 697757619 992535563 860107908 819209879 770909422 661597300 706033283 926393685 926365026 928943962 573220301 812031689 494290680 924446461 225397027 897413278 527687914 997921554 648248283 158412082 995059273 445184320 520568415 123803673 522165879 892997542 744502956 830446232 252662189 920349012 332484308 854192170 972769142 584616141 811650940 882568959 480703282 580345483 818345054 377887864 810981012 435687291 505900745 357188525 562283045 374596989 826998300 58577383 329394111 279300581 831199310 697919782 305269010 301586941 756209769 876829851 565393442 822617473 276055306 78181679 144637895 725170465 95991011 350321659 290567211 86168834 89632570 890511566 346284368 185910077 286966887 339096235 977048968 684002399 553145946 757934151 447540731 793805800 129351954 854815887 64948516 464381132 750384935 364570912 831259476 510484981 421226561 733259470 643259182 305313982 364404126 703668254 307901993 419272569 766982800 169405899 54912274 543681515 737239293 953132868 287317127 794395083 468190685 874322220 997520764 75640134 115309504 947035097 139886522 97246078 259041094 111393239 678416475 183176966 930780580 218804322 559184976 744105064 804641061 287377391 210445531 931960479 954184615 635440803 247166485 808501661 706593050 729120986 817670505 81767110 91749381 239967650 530941463 62425459 175410689 373517117 820536242 617963889 112848955 80706979 2846882 321009535 900307446 33524477 685492899 657926611 229885191 113683499 155357508 767260822 465436759 657451327 215312489 489554019 886807653 606389760 577995466 899384524 980193730 688761960 104840306 630437589 533357458 183711527 194523456 579330935 238011921 27963933 625642857 388574751 847302924 997587171 509844468 263178028 917003364 551964995 598635325 417563764 138069647 44595132 830273906 777499071 646975767 218859519 507641113 113550667 158698776 121193844 807433608 861527622 565516230 804179894 444423532 905168727 588331237 612526867 496617283 365319958 431779151 184218893 117194209 513937040 428721010 122149595 122602223 629857732 720246735 879214569 449838439 924203048 741781372 824041043 244200474 848293668 289501347 393570670 815223338 386861205 798710529 774453312 190568848 409119564 6988904 1752067 740210071 374914445 522067773 74887334 538279775 999371153 22722298 505246027 132916827 135066116 925583021 779072202 316277971 797374087 431486840 773147693 235349091 195725871 218824975 125825330 351618170 224002564 299950141 757185741 991318236 336418179 996200287 87961507 435845665 709103389 605163239 992578703 811255860 1431222 576930266 811596576 999412948 191835174 857772627 728398873 21661718 820320187 781684734 642284529 839314145 350295733 401408669 795237713 137448304 378039241 897083015 444269464 128444372 377097119 794031908 604246874 460053104 13033300 677450098 848420061 910822011 837994233 670642819 865591450 122393217 756556818 896422909 339448770 750753506 727319063 333736600 457159863 391170130 465698038 223366820 132800910 352607831 905387919 990665856 538035860 235513807 943420471 879957796 170031814 304392551 300106550 385623704 920599127 329199652 468382537 609643643 189969710 148031454 799124512 648119421 138928997 863935424 243423969 462035172 754365899 834638538 881519779 657317131 279479395 401472079 58950388 423609823 49143523 683335287 625535572 129455200 642655030 807636158 721662136 274417190 517690362 96219251 501088775 899786202 437711619 301992762 418329248 326480312 502258134 826569099 88534483 645687316 526889519 966610225 592172131 672741329 150252155 237282251 706390283 230158059 143424607 37196622 894426869 645928175 249598767 601814657 571872836 129881982 993110135 940758911 813993612 386789070 141788790 809922617 926179668 336445480 565256350 913423602 581153947 878439019 152613398 126704321 649839952 488083080 95860280 931486226 96224217 537029124 330690323 444413221 399658637 308386681 956380138 81902222 745746490 213532948 92226994 343184307 288502432 654093593 202613144 27226961 144251635 290963547 165341561 238351864 256056413 824149700 395721321 986803850 325814393 402553811 323315501 896473792 83397081 632851737 627229888 329399717 54658690 1733819 24713426 313586201 121182827 86665715 500923460 89394511 962533890 382359439 298494381 839520079 404403366 255778416 313495000 816624501 707552046 179068429 425597508 290519280 771247200 573206766 27472803 71635268 4150139 951624497 175467611 573015240 915719342 721636615 57741064 731803433 696541086 479704376 766938872 239335909 87084516 894330779 997874349 73633489 807895949 210194847 977192031 512380052 493535640 135291590 192503415 730947881 991299195 154729764 51809301 256035937 825451167 443476452 243656076 168915039 865490143 766012355 975209697 886374426 959891725 947081107 532372559 169523166 803644013 39438522 893688005 331000267 930849336 733809584 648256102 380016213 634104859 635801220 152430344 674246850 162128565 60474200 831203510 376217007 824336412 193263841 671214126 311794059 435462745 120172776 994657636 89171227 528056295 332427979 602265085 123120629 129733176 939756028 599432661 868674308 380481584 760411265 459271546 638745354 98453160 236019059 151155886 189389593 120039660 547494271 558868200 416588569 927480126 555945320 502660564 833547334 257728849 145552002 902450127 595989423 713821390 164024121 173409388 8443064 793535954 444225416 997347569 764763545 264503150 38657923 59471066 109827036 227321382 684982221 280929877 164457187 828016755 234935842 299912901 360713311 713216833 886367183 709933888 300243162 440812657 379829813 834657041 635053615 924014424 153487178 611245110 264068108 609985343 312717847 937563618 500604023 98903521 851630907 579710716 779988550 183804399 359511910 94982303 563514277 784062863 137572831 494761112 819025556 596765401 352710911 621102059 314392935 331524185 946571956 541804879 49434436 192228240 182748927 2526637 586110632 197890931 92533878 328517797 78255587 136885994 823015106 593870088 428092311 756121426 456717090 774389087 575229245 386647292 859174631 668581987 639296415 243475884 106221046 166495107 513069919 753882906 73177417 455215457 389562223 764581236 32326510 231850581 97551255 201488346 794134790 167247592 594526451 310207713 813330759 611507802 888631922 446851857 459152507 225862430 595800920 68324199 803344511 686169945 414938556 441990100 725130565 423133030 96654603 431230395 703970130 678096468 868963971 507697783 998859329 184961638 668670393 381498323 987773246 938128274 699647764 584657552 792349067 93405187 828440655 224229602 514341630 681528984 232317691 324510451 866589313 558653282 204629242 649353567 642418321 490029098 463158534 902936503 874061248 925040872 413637416 177950974 7184180 486775373 166956353 820365871 692776741 641659450 308538244 406594741 905819490 927856199 389350650 319311089 615028173 636993085 786237949 298892983 177502938 184620700 369219773 941518801 275985940 786071830 591851454 135902331 21421209 606165266 713891928 435447269 130727321 39835178 903335734 628893877 479279322 667358893 876707031 543293314 325937975 159693342 29307920 197510490 866485020 776682931 542094984 325797948 938788620 87990486 209187131 730903455 716703772 660863400 878204664 410336490 110159989 90783609 85076707 366963193 330531797 400466257 856702707 900356511 992885263 379435115 572428917 352666654 683396998 267261620 759176327 951461808 495044022 230560080 817906846 655604482 630679468 7260950 314399489 337889716 491592328 269805327 670493003 267699930 398370306 733789947 349675245 447958910 630206179 341266891 215060393 479811867 711225735 494223400 848855576 420324899 585111138 68214507 261760549 349912699 725717111 932322723 626851216 520619514 633759202 648321298 245547117 924675821 614771280 898032560 104673698 528789142 29918082 9887271 823572844 429012904 804051406 659535317 8857562 20687565 185726622 216930125 173155665 540191520 902942958 184693462 224120582 541690035 657813458 760619754 240662407 301229835 204352750 857736376 41594163 750548383 220899068 994325155 510458557 825462876 83302474 427314882 312005037 442650148 562698553 599528286 86624479 260498762 56958143 112207734 93828354 27445271 21237990 300090686 326623513 289101641 111462219 39236251 120167166 127575695 530512799 46877609 927807962 277874958 980769322 283727670 85413550 846738911 87147075 657016644 26254542 944848014 663784153 147475850 440240225 709458333 903363309 791145460 179844834 19590399 849939477 632115999 726454690 113871517 707777275 596094686 361535043 976952532 840505308 697322168 673847102 893656309 172814090 620975207 380095070 467531716 425152875 615808090 907063107 335168506 587091191 331722292 125395937 111026883 374605117 217891146 293951230 666520641 622909407 531341609 915439287 165352967 815739665 396964879 862899451 292372894 332260894 880480109 244298254 594847491 215366115 998252139 547525896 226838311 496880466 660141668 883338324 270979694 407481329 711962469 473230386 952465201 942091864 760556210 316438325 600823868 749343927 489734466 987000517 493955408 13516109 258293310 445010845 188052386 190097650 304318854 513755214 409417818 785372558 258879532 658021307 770495765 769325727 258620662 288214427 291377252 137413048 549624032 961177339 593695819 332278524 591332760 830713017 651169475 482227623 926693377 827208714 347007544 430511237 759473840 837514484 286917643 339595385 996056178 684693205 609555217 708674296 693089476 462847194 305813522 555920011 939311705 350003849 472824907 667246417 740192152 816242744 961150956 425056634 666209052 111612307 530951835 511131085 911818290 206801434 645666288 373002275 770174814 568591776 104935927 393896937 962734806 296614605 719265201 918011042 915287813 432378781 118408594 388262499 561566474 645260767 515703300 153402966 756820278 917294520 528573411 767372087 172623250 433072157 487091456 356792794 62328919 614335836 105632415 226062243 919499891 781555604 411421688 383960332 607239179 300779831 603519673 460353059 493186803 759925135 271552386 833421577 253709112 342116151 978799207 204062324 662819223 434371742 785075570 447115309 540837891 689889928 927381791 539410835 945953827 234653836 299296991 387970071 461084625 3933590 942788501 642275262 650854812 59054183 416365596 583761826 754243399 268953104 618476478 772931697 386749512 444470907 375557822 439108844 97366602 77489378 876691152 367434858 193664427 204880982 16020380 804289874 830238206 201742905 507710270 846431140 832780427 480485572 574428873 733815665 934326474 216485250 671817919 736847199 756538604 103963603 345186714 585140518 414299218 393630570 552941639 426778645 274715667 196285136 161416358 736683405 653919611 210700255 39842827 485545349 149770886 100706375 676165568 919100165 960795753 577417740 541834113 23231659 801426954 680370693 702185982 376598825 993193603 852150879 667296092 966213060 239307683 932369177 50367413 79691479 915229292 310390406 475458451 461777998 138310038 976823758 882051193 111009324 475600395 50235244 976378202 271777029 478919529 741735345 706781984 880008836 804338819 63969600 256955174 528076262 958657504 494663568 542671295 720855678 465645627 327797101 286350509 431081007 592350465 839341432 461929386 81322997 341019350 1918626 735852770 113125468 447706640 600664245 265303415 342639623 627947322 455594699 125992444 968709163 842273683 783227861 942763771 299761937 926118284 928587541 426222447 826131607 471919950 751119524 544559434 12124336 97102642 68787181 467279857 991639519 103043654 549026864 208237243 278162368 50565839 7054592 322291573 657242496 884955329 107440837 59487456 380398688 176099913 380536635 890477874 158565941 767020100 561697777 35796625 842510827 530943173 198075595 747632027 60784125 907061139 894404737 385415137 806275327 759095464 992725790 373981287 878689301 985258163 932697729 595653158 830678393 802659223 272491743 623888011 489392889 198575850 623060287 268916213 659329142 914846839 486229501 861307450 137373798 93089980 904094023 709531939 163393106 328594797 874057635 496806123 417939289 811301359 842658919 505951428 177632427 638333918 580125760 599567186 604880400 843402631 738233260 949436205 861898847 70761582 287395199 376188260 458609159 517925322 518629218 55294965 378855817 879021828 330782799 317465686 103843323 499714108 194291479 847561199 216002439 139805892 701078236 500965533 21509610 125377443 558128535 210121521 240136437 100681747 462706835 219351535 344141583 340436995 494063856 458716944 731875762 183940245 599464993 519292736 605152746 855585441 940551278 933463584 729735385 23843633 232178035 668165317 500387893 578229763 496821407 33013303 552326856 678209034 46170038 555487219 282650863 311262701 538853200 568772202 889048348 35993223 196082519 265333120 323779157 980984165 462823309 836464909 43409586 819120971 550032388 474461535 50110946 667876527 938709412 632120247 883278247 801589308 837119656 684330695 265270357 193829713 718878497 27012410 214127959 440738944 284002674 763640364 156494763 455166991 802376914 321171886 242279009 181861498 201771981 999721284 918595871 50210031 445257923 545908838 490498720 694298576 245377640 274608386 938952496 752247093 193620546 940369400 643426610 814820711 74963247 597526429 564105114 1573222 228469724 58497081 808708212 333812581 234752334 723566729 869818203 404913480 459393885 182704189 102188034 488037165 618833716 548819067 417791151 280330720 590160851 604222042 798673595 999918949 926062733 833374568 756252947 437505394 912915338 802541605 584213178 633798130 10989638 345616518 202292037 245313923 966713360 52899955 765166429 629121529 204575372 571543112 773735745 927165657 456719410 85665112 292359489 950277086 567958220 850836581 860264004 576484728 316391932 858650666 459854403 901676360 543246772 95204817 187290827 586650278 953495228 410000765 933541759 105918747 819915055 857587394 631903892 762723047 460990206 675820328 835293524 310795132 84208747 645304491 880955547 321146881 905676432 878327358 104337757 545115600 227272662 261154371 325170462 617850104 944449150 602798356 896856184 238243003 489263387 238143870 74540953 891656721 14485782 716573505 200545474 111371812 615064361 943368593 913384649 189144786 342170085 927467416 839727512 939308334 943226924 507724529 878759084 624688128 31161783 700417583 42962326 707874880 475753873 164499284 457196157 586529182 737486489 984421978 183183515 501915389 487598085 779610542 444076732 156210932 872985562 840386735 788500930 468536908 992233845 943532084 357560611 212397701 542770181 901909763 803085673 850408016 44289294 53342811 36539569 743454230 828138727 491767403 300217133 353914480 354997565 544943832 818872226 371269804 12859790 803091771 18009579 58494799 364135855 310383009 366547316 750783118 207624263 428047625 687576511 80122579 896522065 300044778 877822178 692277054 94085790 785558698 471429639 188345889 123735120 653168679 92252140 427414403 747368289 352727602 54348641 650102686 82026522 928313360 128412108 855539554 9300636 214460664 225431464 182160624 726524250 983324823 818773761 845654559 118734749 857030030 17837561 196796666 718469631 850129395 1530183 170540607 839855344 156644300 731820723 799293410 203367221 836080023 366934939 369323400 276586595 273358533 249226610 157189389 61211496 257696826 663860795 644904190 412427523 175717583 449544978 269325599 911390279 608614865 879476387 215184615 867558172 286192511 702412721 500060159 111182014 782981519 627125137 483942087 717884476 473598377 234338988 35884753 291656442 474297322 85325569 511423332 710589232 858720611 147759264 245438970 782600296 859954840 350569520 326482114 231576580 639756290 549145962 44959519 127995829 652573837 871662491 186414631 176763909 646663195 679380518 680426788 479346382 77348350 246147840 190751255 933484481 795139970 2051890 263779888 517606113 958313569 39646555 714277463 973148933 522357069 531863595 892327847 332776025 776484969 333782761 536479213 691076317 548386768 72265710 771306541 425036517 916803597 77492008 358981917 848531351 796911777 756311192 659495849 117547888 498915969 975733972 583308653 576733887 48118933 998806406 322419518 219427369 863230010 206695403 327694242 971009315 72385473 511064916 783628114 533926523 645376750 973609384 999103935 497561808 448619897 201023969 478309771 831284501 13356433 681214090 356666123 720394514 310551636 440707656 139512012 154541027 428371543 989123662 99482635 395508343 148010020 67303655 892389179 674363410 283973303 700572144 710436995 827374283 534697985 151227226 785392702 55181327 821562726 181388205 678455161 24710428 491904062 107166336 442307704 189213575 563012695 299025666 659388721 734059447 565134449 145866868 738959823 66367335 527672001 314059949 205062960 223216168 785894767 793364629 9513832 343133148 871026455 519930538 555888700 110259516 994237260 429883262 75784104 435076692 948943121 574059062 493850202 761931522 501145438 819476749 773184564 988624250 975961505 441146319 493958349 500765380 870108730 865552478 73312241 70475068 814252797 928548145 824799773 891027218 904794036 394296784 807023364 418379976 651026587 75577177 936306188 359442871 108166370 129187070 560707282 279370890 180571951 356161157 465687458 128819648 83536409 11974854 136200703 428958766 344566958 692482609 245460769 149562747 955135726 784783685 320272498 953386147 291145293 219097882 486625808 165708917 361894965 611779544 286956879 255009813 607241346 683425598 958716212 272639354 166796804 605349660 502182138 858380785 1447168 274752985 855902865 457426584 848825263 950275309 374406938 957339876 93887678 310270312 19898220 523279132 364395469 985252970 469847699 561219291 552374256 920714153 605964875 428646290 243708977 315807726 475406217 877969667 925295115 456971672 785068787 445459399 801690609 438457623 573619042 328897993 462872517 375768434 614825063 179122377 106053985 958591682 766182596 387238107 60337426 43494069 158008047 887598309 823779351 195313932 125812114 765668644 697498406 56001052 239470605 445859239 894062312 377995089 503950579 303512787 443484281 418802087 411650185 657618909 616941033 590266927 477647178 637036883 85081789 128261776 114579045 595365780 27601006 238059907 757610045 135518035 947272424 975788886 969352424 95393816 800002317 305873002 224592049 350416574 576650544 825444790 156327063 933430774 419667354 465931073 35766475 36433091 579435273 979991723 724500278 289310461 202786092 479149989 626588656 985409998 947882792 237116020 823124938 59427383 306136086 567838322 174823621 856612236 666986882 415656077 726998681 11384820 834656750 309903303 582432047 72628458 655370061 15328692 531116327 713488831 292097416 30076159 71677011 81299989 698460413 275783141 985364538 80743525 286027514 74624696 904892054 345492602 852097606 556673629 91888598 838157300 98123673 403335374 800615837 428902087 712834592 728820634 994556225 571915705 670664698 153973856 243997261 398116071 389804221 423723863 714126591 722838592 988925425 343377865 921007307 604498952 597011859 134883476 720179926 174601559 168772756 155183272 375832699 165538456 835335000 628059531 353457610 342529034 525009464 117536216 297844228 655169090 191194112 478225339 707335200 724231335 62674545 812443511 365177162 193437173 162336960 313593312 540380510 209614523 951537173 554443489 317664113 105753565 205787662 664922104 936285769 65108242 103912249 293748405 508238560 167367527 228876701 829033279 81549541 300324794 383514930 938943182 775493434 653015871 187565156 976483890 139026039 231959551 994510484 8829003 260695398 231481684 684522647 763467406 355127685 982653039 673993013 396037511 132175239 355551442 46959531 492613969 210360787 800771798 948994602 215537184 787674371 993410599 983036501 909805751 607262311 996336195 345831367 528539890 82364544 579418366 689460875 351447102 501996421 643006208 342838690 945323548 332102625 408115781 464790913 50639010 881175218 862441628 542730384 838733049 720977996 671220265 643817900 693892576 335281333 393224676 112056485 178519591 743716390 345778712 849688769 628271925 969082256 605336804 659370295 911706499 848592660 308582589 317380533 993214751 321023626 481002218 725221595 368840234 501350907 882004487 170710206 841551706 26853415 750003331 285782886 109439609 913843968 168902946 761979215 442632420 234214445 329998203 374822892 261373452 956138888 491096186 561784351 261726712 364258209 666378976 493688003 441148354 927573048 834416062 707475235 849278998 836533958 788070142 704010623 460817846 102635253 433467354 526339982 405669880 996480292 548782435 320457975 363749190 579187940 785336571 569252823 18222493 371254653 198495451 703856958 998240015 632340586 910557838 281339313 461749825 744512472 736959860 203057066 218710765 234395947 809185600 997261331 257500769 33659770 596175483 734435535 238014463 531988494 407243518 680519474 710350779 18493159 428461180 289034371 416409248 156238135 189671158 882873473 692903755 756514276 513315140 908954075 792321134 807576074 870152083 529172663 145241935 51394423 801928162 824640300 547319878 82331438 550986372 303802311 350326082 602274789 655787680 713172490 992464965 697425030 406097588 72587496 559399395 637288626 621203214 6918475 253381576 854581561 410246226 922315407 809251631 821052579 81408503 888457988 300856683 744019370 359660233 277056623 599087714 887306686 271438185 941541001 9009420 374977408 157271240 194359167 553012217 563517255 880117936 906851440 877281736 485653918 846113851 717205490 608993713 854432195 985575513 291802766 815654908 886229034 436379215 497779007 267992200 851613433 237962291 263554039 543210309 254512265 404063601 118194715 487796410 961473003 37030729 264442626 286256768 379923297 172163406 218799225 78841284 376555744 635095016 490080066 806385609 531290773 98025171 29407120 795181668 422004573 998611358 302305676 722805374 576288587 894850093 948899284 69777046 392224294 781908280 963741687 535625020 722307560 176386762 895079674 572200343 669967168 468080834 231324118 845007328 568691217 35623253 791818231 835905509 584694257 159502218 489014206 521168263 642900651 552607676 979260160 890032956 743070909 774099484 522898310 336713357 169902042 452238637 71403915 154319001 742198634 37962310 119943745 619848337 999688965 229270548 907629132 706551354 547706108 713137941 57910853 471587438 161709776 300025373 249006392 492673435 556374457 388535509 475150118 834011202 638487328 238352439 897334148 345226617 85192997 44102932 122126266 329355626 446374682 331121806 266436006 912850 748218373 445333150 31424534 43660931 767870754 84158095 303315793 678342626 72649823 561693569 582649231 359768937 538607839 94388455 629035388 160604198 52333944 114237193 587841721 740137275 739903796 885353859 59009627 171789916 790928852 773208004 252085610 462099028 437239880 826890128 93298019 7797632 423459640 526370687 587962551 442257490 385909630 901553019 34637642 759188431 752918186 589753158 737767157 807969298 42004349 906786034 470908420 273819335 276638830 819598183 589337528 667154864 225459752 544487648 265774790 918365988 681758218 40008046 732357078 578621067 926796965 559722868 712235525 428314851 952683074 824469033 311196515 565505854 138518874 465207833 43152758 645568322 351600411 263231396 863059893 282215335 812930538 572233598 119804430 516976316 668013020 663022381 889697 726108387 887596859 25213326 367776259 103229713 702748423 315714897 284091964 284168527 37002098 327041912 532697289 234764091 812422243 11913692 153724762 744264840 628219380 42795432 474259221 339938169 343267060 486676956 558396178 432411498 186060646 591694283 235386076 635031367 260901120 48206749 578400502 800735251 75979693 4651726 961720148 640278371 776328204 885869229 673719774 17424864 50086894 63532254 987237617 839428041 816744156 204711385 399127005 817094510 726680206 845553000 573794152 55323062 513580917 282426669 166829129 140240538 263305522 58207514 151870894 931465640 487341852 93986294 754042806 659317377 15972031 61347295 433448440 392170843 278515800 794201795 157648379 586050943 204063578 699621093 7438779 823748044 786702059 534729567 945557035 781581106 615550055 448143002 643997613 262121784 916871644 844911831 356235931 545975927 664881805 472438441 11537858 712284445 373224816 493156217 481301730 623328619 585380272 713549313 999628079 56091703 181634859 69411537 650072531 758578027 258033908 572233934 85249130 464416900 470453714 788113326 441985924 976231700 379565760 912659581 625562406 597837632 499847531 68562970 723552073 346160706 323444919 638061498 790048346 274142952 799937338 633122661 491588025 984797715 348506560 728359540 380932154 120930618 604970437 368034329 583764646 699026148 759518206 952155095 217716795 41944881 513706704 918679046 946596136 352478802 62446807 401028177 342540050 48562957 959135073 518650423 356829074 870127930 904039665 611989901 410370741 529720904 104661436 278755578 469511034 39831992 723375663 684557945 794020952 775640993 703187815 497694683 982367157 14051627 384705975 289977666 632690288 112455444 740194086 397389224 291714648 539970606 523338734 286342486 799967410 814408158 695222014 717561453 647957687 353578655 604258425 955597664 111889427 309510269 903335477 899134840 684293480 740076443 740402749 757205839 374944969 963441837 197406544 199173461 455863359 377978751 144913759 549419087 619960391 946412396 925062163 763403730 688867410 509946343 144400708 561294028 298611524 719676150 890536323 216563196 915596790 568885681 453068433 324591733 964737973 912762056 300467686 630307359 520882880 817234683 114104107 915595318 195226829 616776095 612813504 14334921 338259844 530239264 412286519 861830204 246416643 234581881 7562455 129322950 543560792 589931197 761676826 810310132 7981578 613998994 867429423 532885540 378183825 699150257 201967224 264979467 590227673 343883880 551810573 951227440 845018820 354693911 827920952 812406382 575304101 581351350 200220407 539130998 643274437 749154638 230809470 445545547 142000097 772018811 734278322 963941572 383923114 527520241 481756590 356154893 690590276 148275956 66220098 404365862 41085895 389115358 408676719 48200035 712838337 423814301 664657900 447062762 989598899 386263346 579844260 996719416 376883855 810427955 538553142 345755292 571413825 885526857 523384948 140156347 474563107 799152563 785338596 190438922 451315078 409557186 734656834 344152663 874557232 699467355 160043772 402944833 490360025 343837048 137885364 401701819 22858413 956511399 990610114 470071693 650934733 618161289 617904048 113202643 510430413 730557524 130696892 280836476 890789944 856002642 401337945 695256012 361020680 225999968 483034286 129419994 869711662 51630704 998597653 186768915 114465296 267655943 840357789 204374197 129098501 454025663 914781065 319972949 692224475 749329862 904818127 982743386 79087954 303138910 700413594 740323199 726457247 443402587 682398409 422856277 604484842 751092136 241331822 130869182 82950608 73286082 394374991 158420595 80544225 941354043 683559272 59405440 782518307 459586616 198138214 71551427 922368397 354934260 286594350 609224304 286869389 391151419 994708564 344317327 159133315 311661552 31493796 434653564 755744835 92981383 772539037 609920103 81588887 620487819 957216241 755330770 932798395 516168985 153297415 358474774 561346783 937891684 781630073 689656542 9441961 767173423 459677078 699099049 652251568 937664342 205778657 448641868 664007426 925961285 339706256 317842286 446613663 721609343 441856782 608865547 23192059 928288536 135936889 527336178 649250432 93577276 383960612 245810759 867275274 215400358 663700503 329388289 352482665 691581737 479697034 196892269 461465826 870107435 866716526 656029097 823071407 312094501 991074788 945613866 67364218 602358820 778906307 22389303 544389350 848788299 993211670 595618667 648835078 83617871 945261724 476126519 188006372 815567865 401265223 711382365 556026876 991655080 902071997 411177590 299447998 802348748 879702746 943273069 860614671 899300716 212794924 971506434 863093192 628216481 606137206 250766409 576738870 532070937 390247725 270341928 517413528 102978453 900232190 451126236 927602597 57273707 758199622 933936244 614758915 329828100 337076632 253521236 464678609 441114975 554689851 484280244 94217758 319160205 942454441 367307807 532113263 275201843 913794322 627221237 241871421 874257675 485918423 934827753 201727604 878147939 725046799 953775491 694710006 547508380 679707909 353793950 753337878 396377516 768622775 884859371 278655006 556188829 631425369 224105837 841745865 709833484 681049808 180449788 993892041 588409002 197336888 934903490 303998018 315915198 89032031 452295360 638811469 448239010 889723207 897568586 760933238 254660930 571593896 448024711 123931455 914703264 211710827 598199282 410709659 301221458 464812080 360766172 917393267 965239298 524364489 536138471 38788133 479601901 904850109 159308940 766525952 869974373 235385798 753271190 560103369 505163855 736362067 156768677 721247800 795810214 222011399 849220269 117900412 14932726 248432696 786561396 688773811 261862881 634449521 718344727 622307443 260367006 65634032 654524549 144100676 195827317 500155176 551463170 166200612 662479940 399499841 718765734 633946881 283514109 609414035 591884764 4993346 730126374 893100847 476283619 435635263 406936151 117598294 600860752 97982660 375849919 723795455 634914698 93835922 510366880 535596885 145999693 222441694 273552847 968149047 132193832 329211601 739455797 480786871 176353535 949075974 935926352 757022876 304775561 783418126 720111794 38142943 281253587 510852591 231218817 342317361 319163323 277652129 583893238 970059124 189994357 199733136 50769118 919426366 87115786 246256157 693093660 426534745 545455316 842994461 377720613 613435717 456790276 25586008 633098114 234011573 24615964 736709131 722639954 129334542 94024821 205902183 295037893 94826987 953533371 588069647 487724706 318504347 233176939 377296030 462056642 903337633 865426268 753399327 964382610 439533364 907471923 960667795 492019349 883973565 845780461 671572591 790088672 615130971 394455641 176988187 282793629 967272546 142895003 599199348 871533448 662979287 423858859 611764554 561895797 601798390 362352084 637055459 878634952 721843629 657171765 339339638 193987323 905148190 184222531 45391793 880486683 419356961 563232581 816291124 166568524 804544959 30831063 919831572 43694401 790060472 719154536 87950425 388165572 211194110 44502716 633428608 961161524 818770232 232754026 843908601 192566530 240144960 527460958 869562282 168756531 16415909 305879128 834008170 545090785 61919274 700110956 982360455 186756282 824474693 541678721 206564161 871561087 800718497 6699986 469543244 876170886 566683036 957971824 801576786 508706873 898890954 863484093 362162543 131944085 893005168 376653810 244214963 70231468 667982089 684277914 284229539 317789219 464048069 529113109 676050105 392253365 124855557 16139286 846268127 323062190 318951905 60708133 946456568 493678448 25746850 1242910 980562264 734684402 445368392 361200049 900081734 284771643 662535940 283892448 985801857 678536428 656174271 459924355 606902968 988898996 504931986 670609863 543600913 668454361 671203404 220233643 61701539 534634166 598150896 798788481 657474299 719888695 395321139 933682803 422135451 86902110 434902530 822011644 558601079 539068866 272161530 953148267 312241270 428989451 994628846 234968676 437695223 922722679 734977126 475277662 833912137 888638808 156934682 763223333 379317553 124966804 478153594 695370841 192502376 211883300 405085481 414540270 525768475 252876949 822123389 603601323 717417577 877417610 599878914 980394667 912904425 958073399 534254324 821297630 573704993 676390376 214332872 633634953 569613328 845568888 509846435 521135298 629447589 237546714 59543265 731941877 894263621 165194388 742090384 987852642 596613705 716369983 936455922 993698460 378330237 311403785 229142015 877785099 154805923 774368306 715729888 814870379 612452590 502728082 653331829 117402187 170154887 721592338 156919504 881110159 67862796 35631662 238149048 45661935 709144844 982555770 667541031 975083894 614046348 815159834 160907469 110381059 438084741 964740424 222253962 8210635 954924131 636964305 240394743 177183957 526495879 799887768 639441886 185500284 570235590 190949650 560948158 827506161 261909737 338251209 547157832 694275511 547762987 336174298 941165540 79635749 180065982 702711158 849486125 173151463 861444166 941104484 789964657 586568574 818588252 680498557 204267570 975132091 750992908 752108079 498052775 346377544 159069015 819505660 651614268 326315807 604080562 556554232 262739213 441926160 712534662 96596045 998789743 158198592 975341486 26584250 837321576 795031205 260852219 784152336 546210098 241386379 360163763 658156468 776997820 342831890 900793102 736874017 748359720 143520429 374097080 919945059 326621518 733555876 616323154 337943708 821631032 195136147 890180849 324407170 27834020 150396905 63223710 77951711 386412934 77524586 242672596 752506128 34235267 927415470 270349316 37680263 330168694 265756831 603262996 73130057 483880686 418291199 20573660 568092785 431688878 434120928 155889576 631827627 127142189 943281193 223739577 629042874 113129236 815854616 350079428 379652850 48583618 142658235 666850673 667589310 265565643 582783605 852907741 330332443 387076981 656611968 273332248 849638683 835250489 836959077 762419368 964060260 1882696 33520517 790800389 967499695 539924740 35263892 899038747 547274569 565029762 478670616 260325323 666239381 794359823 343833326 328369001 426914183 89745832 908154822 591555391 293349674 699864192 897872546 26802697 97946140 305095806 506945883 233936760 369833997 655396796 281990428 156388015 231047492 27284233 524617957 702561481 668154137 570045544 943028745 603682129 962071164 764823439 538459824 823236807 942461549 413494889 922808918 970018594 364449921 543216532 632139338 53833 548725092 631379684 876453424 207259801 233830737 910084574 588265088 841872226 280970908 538188862 596504324 483857258 581817385 421823601 281794910 444973928 372655090 511976988 502914431 959165066 486364548 338624659 319029297 325133552 171915906 749215074 650252175 198178862 64477473 822917320 24435592 449114062 767563947 612259383 219283551 645829580 597712380 579571414 712206125 70780696 42924552 425679359 212090974 139150871 257950803 560136129 138700848 645604131 802548087 546321759 683655991 987028742 500713378 770373582 661105884 569416067 373318933 796560955 453855705 410576845 791632038 858211971 631188670 877495566 195973183 570105786 479425136 182638306 726082908 617778853 707643045 933653465 772136337 902276671 839760488 443577336 599320322 982704696 31108251 760631608 823666409 566738801 633958000 911181830 97518100 604574337 592529392 605811650 697325413 156205619 147890804 228631360 858534480 729534470 413849902 271188810 727310176 669759148 666427297 207691035 116046002 534593163 231441957 761285861 654323832 704387647 775324772 531484748 476859255 599580950 776720864 320851178 989956489 277194130 312149611 871684809 591297564 409961963 335311532 512151276 780626610 731363978 479020193 558724038 238295391 61770383 525219352 896613824 828825934 188636749 120487220 950899640 526351676 377254345 74253038 874228093 770536955 879359806 649489810 156481620 150459121 618721179 587128126 620260214 358788758 618823939 593069670 784377487 876209914 428001100 211153491 59542081 517026364 102002305 757526431 220191391 46238996 755401056 919175866 925189554 957588810 678620637 16597096 287617528 796950076 579678109 412075585 469869280 379706716 514776188 822109488 967975247 352544432 958196488 909371893 403758622 980556113 22953731 386733987 89927321 591653868 473288164 341487138 518245121 596546372 536296791 623220398 312107275 227722414 169270713 536165974 66941024 506709651 830852764 984408190 509529371 579673329 937420105 695959389 669189710 168942555 297806137 787602560 427352701 956444149 256488091 627870533 159846432 388272376 647548114 875381601 313351718 93825076 200604404 256519003 474097261 722718985 169910860 67153166 227239499 713259885 485967064 423034411 384594696 890146921 768671179 576226485 225701985 771824796 83083788 978884995 674711303 706293430 869698742 989816001 543405342 878590974 578158486 109068399 183125182 2817741 226189744 288354016 643741302 217277201 580189627 294278973 649451972 646110923 682703520 507554816 902227870 257591441 336286207 898931065 52827884 255723021 691865769 773284941 426935051 68498043 886413095 755757041 481612363 636818223 233884210 986701619 794535026 427824653 579915065 815818930 432829240 757217295 8055518 897513825 717953225 500775363 670376825 826712328 538225734 191202762 513270675 870292163 542598724 879230299 838900844 174078849 427548491 303581885 979201143 272363654 132514904 95173584 209604569 984773097 816025947 804228229 476230893 840050967 494783418 107556193 90639042 845565262 699881164 436496383 62150043 272985635 250042463 383023499 202826094 917544445 117765939 710522183 594399334 981482135 328197501 120141065 208874850 602158978 148932453 914852283 912506483 293054624 994791816 304713178 886790498 412797610 501479286 47436280 413887015 341043115 829630005 945489211 227741043 999977859 630229180 991928795 338405159 553960038 551620217 275762088 130100955 388085594 199474124 955755137 419372120 441854140 362374282 945060574 893734942 173436604 626794106 425359943 45545951 619122652 956477915 51210714 310025986 397279605 866003421 632229577 134162209 184846385 117467427 324403930 303789707 13104786 906965575 527178981 80986307 28021610 659335254 903213402 610423551 246405729 339237712 897642680 326685865 119398515 867315881 520314391 616151522 611377775 343074763 48195487 477372922 100258681 703975058 511087375 274092025 559732616 700013518 323204151 979006746 669496297 56013764 77782397 514726218 486329274 553568430 261230684 964707245 43720816 776285494 279663073 391332122 981829201 468844799 372033837 629620890 624207611 228747548 4064757 310559213 576832987 462855319 58554629 655366660 869409975 779927276 746398392 740845448 569994789 712239243 184832898 269787474 32909841 272729945 571257959 518386929 601900603 766825775 204498817 198306087 763745975 529660506 259519613 988481132 269494891 166773273 479172894 674394986 111154580 642000675 780381625 70321535 523913793 536366110 940920760 359644478 733335254 307415081 662079512 210691822 943426699 443303251 763360234 579821833 650700779 107826977 386668757 898546878 260974422 744621836 242881426 320703600 832235903 786067201 705309295 494427190 45198830 979575263 860357069 857647193 794517374 745142780 323918498 654704088 320266976 954231201 478388984 436189415 626156311 916613513 169288812 946708843 789907450 407102310 358806704 585683328 102327478 218023004 544831497 130913267 559415881 777677188 282682833 798697673 214430216 710608491 57317622 507650998 754699802 456444816 876684409 123276967 455071226 95720169 928401905 540593209 741706489 891105887 580780550 765312063 749247673 104110157 136627958 190350912 722230707 682305029 235483410 29705206 930223026 899777099 859363650 479828944 299754070 163813336 870373245 200148336 597634450 546057688 580531026 221247534 383372847 266632300 71605859 28129684 865840711 519464745 397463268 585237473 872835530 690124695 918712352 720280198 839781116 870621108 479056116 921280171 553267445 961229422 374858322 654751659 660753952 84417068 478525376 667792275 722169532 785073478 942509527 414745511 540900702 652355208 666424516 67524830 485862765 14359988 668741321 266568289 733358501 316170237 168130749 277417488 497124501 175934092 695359112 376520957 35229985 569321214 179020201 307167214 966634240 250413540 901203888 403830239 472353086 445352769 445137091 116835966 611521212 580289296 814890013 662387886 261957291 556649404 403490443 625318660 725838101 55243942 544532205 661730893 18863444 768686243 500598459 34423814 982026393 845095547 178094205 463781602 228392038 812301163 800497234 224907080 822485268 793850788 884171370 553426899 927536206 677627082 142905228 264333776 197659028 423194229 858047377 240620483 366279866 355544243 748864999 181125602 814647398 582076036 146667023 470450328 864496277 119217245 287169054 775307524 299659542 899213990 538035520 706380151 520322061 801884732 735182897 324455418 767309426 343913199 18735554 923662534 886294160 496056325 251342170 93321417 508597382 105090741 621083506 630923304 273663689 842580653 864760856 890714807 902836384 810641037 811409261 503785603 53696679 307893866 337539111 511319113 871252813 253965388 772169744 520181756 735641941 90355376 81410181 9817923 502064729 505196294 694116599 826620920 861182786 745456180 822696813 519099562 135260369 2349329 867519745 717085468 832815642 759234795 524189790 744301252 897237252 620169218 812184137 827831116 643937994 673686538 302220821 609128725 338050172 663222445 574530605 582426543 291563903 145415 289859214 593883747 540212233 550187816 458591561 435905193 602609062 551537814 315821318 703534258 164045750 30456008 219157372 817065951 528274412 267074732 123808250 640172871 487609552 821112865 785979362 468157493 275874878 343782526 522773800 866645672 535917029 829004554 565340887 444352978 891563466 541456257 848430988 128165530 341170370 557017237 911559673 31439386 468984059 727607403 828869987 447685153 922875507 139173658 565841957 10440625 563813759 170138928 767559211 758422914 845175110 447910956 523115896 21748862 996491332 539497221 761181856 256213059 516022984 643714209 619570510 150733732 711077237 639908959 702898880 884232488 783925701 307083918 130696262 646803850 305470081 341552883 742682566 850781239 992706634 28861767 530960955 745134547 279976980 765525943 230697009 170284724 947238822 713103714 203235403 736245093 963250715 369691359 818382270 45616421 774632547 655925428 501006035 457496677 364435907 619998176 825177961 622135630 409560145 130851922 883086192 40776761 115126137 540140399 48999279 337085492 544135290 194902160 555495678 465861508 533953770 277274497 399267661 676156445 307355950 805678852 705096604 641017388 367278851 587417932 259742657 736210574 394023928 828126851 454143653 935754070 766974961 83548484 810833095 176394827 225980326 396919073 636287159 884896103 883428129 6928158 39033244 791213401 558283844 347545140 32400303 329929220 274389313 295381455 967786174 575223038 259282720 509548625 207439018 931921938 802763836 428528525 139031529 113131966 681726150 406550348 664414724 260219830 56778561 601657291 111710746 161602911 799195396 937202235 61417820 298709589 432296123 903167296 595534223 49289957 48925927 34219379 173127053 611507859 692571225 825842656 568686532 9062550 851949755 411342472 43524789 967695447 269085959 557846240 538000758 479899126 146631693 915135569 565655601 3208389 775858418 744400566 358061731 266458059 884202412 80751841 828200605 842404418 981279623 418219286 332096647 74051096 819081122 802068365 244433880 521989234 118432115 664280820 805636511 80462373 673639231 319432940 107957501 874360892 546242723 952961159 630512553 587501685 238268686 674038993 739018347 767283651 357731396 112044868 332357025 709589709 271004892 264831569 333108157 817961070 921750723 136472542 835515332 820802099 631306680 505711043 996224464 718809312 94296013 20857932 213662608 467891947 792147436 387375290 349979331 91774719 502490192 164952514 441774016 708713595 958037256 448923148 936017394 280250353 358306423 290325173 439647316 210003879 969281495 742133197 893927417 106902041 56895921 763729114 474862214 793964661 495480934 595420500 519035574 461444893 562835626 399484711 265351381 807653929 563898883 981543732 600899398 458007010 583359822 733372879 649129214 39006024 933231931 860392770 287470598 261455502 269174476 901238857 742249980 35856280 730817498 479292053 483931282 845359748 141813136 197647689 863494158 381846558 409447662 299242368 60235209 285042282 605181255 721670341 388213936 335470366 268597443 945895321 433154502 450377253 869521630 885655536 784497824 533751837 278943463 612674484 571805159 338416858 811760258 508615489 236063706 241245153 309488678 756535271 766155465 507084525 707412896 324926572 733519771 966972014 606129295 246811015 712184905 961481733 118777573 31887974 934735969 232482570 959010668 818800425 336044420 515981062 691443263 402834276 15585255 824645177 340962636 682513569 558678742 757356053 342053081 248301276 148590381 875271617 97284604 447642885 676320733 794533015 132591394 901333378 457440365 919188646 258907273 166087338 208855926 747877680 655527621 495782218 334422310 611512621 430371135 262612772 166233534 801738183 667671217 124018540 98543124 203636444 798422443 653294921 916928018 649021311 240274706 924142170 221274933 507774583 599425691 104976686 514349326 535981759 315994964 504656330 923235781 958169604 614256156 756953128 154218129 653154602 974007334 910602418 659806785 949541576 65022842 221754059 78226870 354758055 783782260 870859078 374312550 302243142 41825603 149199085 649187035 415633497 493973099 139230971 227179314 538426182 606981444 327425954 20818333 711295655 374279032 703676039 570624737 62167498 182504585 907974465 912247001 300582708 284662345 343052765 917695729 782016282 841605471 560772957 203561643 298604518 134191049 829393460 651375646 625636536 820432213 119615179 258651762 400749026 773141030 429548032 183413349 793262955 759972149 427839394 967413449 90225549 838417102 286502134 560498947 986284856 39794447 255446837 921790862 84393613 130128492 906073099 736301174 791539555 510819374 283300890 788265950 27636165 134275311 617342325 191554682 433528945 344901919 772234277 369592853 757067611 19335042 541938856 584385549 788592168 606395312 265263213 926364626 696861876 62130324 290346073 602694507 345072012 353592046 615291717 801711088 128719476 179693009 39963261 509753873 982151395 748327717 690136642 211319437 363689090 380294182 946746441 838022844 682819505 359810019 252464699 499117830 80143874 989605312 552691763 702218602 902394556 235236340 735516483 389075960 274088281 929184268 698669039 89274711 692112392 640345446 366132400 994742592 113090092 917695415 864922738 591705344 227792603 100944262 117340438 770792442 214709599 765997230 261615601 571456035 599338425 217669856 868480075 606887557 991771929 641644575 609807841 282786236 67877991 129399618 626023780 859148412 592266942 414574197 236858616 266976777 561950187 950839224 942061750 992870077 246435058 100225886 462794026 219301509 611392137 14780560 620988373 549550948 442494876 344049096 739834796 282205167 109504967 719746390 73133463 732198352 489273823 701818846 557160179 434556996 515232873 774618328 215463441 544374941 518689825 963715855 713538228 192131776 44094069 732849443 380524183 547022247 697578504 124457991 698413541 221404128 218589999 231282051 548335039 874796044 890720887 406487219 736768186 797384545 62877469 585080966 70451038 729592873 993176468 950281280 876214952 578928193 335024643 87257080 712509576 342196635 776999620 188310811 677044836 756380860 770717927 676341991 424599956 451637566 604505261 285895921 862599651 988640847 227046413 834957215 428663316 378701105 887806770 61723311 15855195 322812856 799378682 707395502 697511136 899917007 241245561 140322434 290608704 481281267 350110324 708672481 622271499 417218742 386036199 889698775 421100871 237555005 240886400 360994372 721692907 974010563 614815777 61228892 247357029 990326036 249429089 95630373 819832341 655008786 290005772 629550332 873146320 399305268 19638943 83890705 289753950 270676226 576902861 756814310 838030587 234454426 279509756 166668243 118758362 432813358 584063688 550752901 976929437 455552388 67071616 201429115 270490079 20303221 324639652 102243464 534567594 695690094 578490733 809631828 377490177 896933362 613987141 638753499 913531992 500382741 754755402 181223148 624619030 228598786 777870032 941585835 379283482 389833079 954110172 56263951 391736627 721582660 282679977 318561893 223480231 616679120 300885031 75153611 134268845 478412948 149321847 742848950 425421811 379742365 224544880 2851692 408160792 139792398 565307677 766862731 378361139 328720540 410479165 785356672 390965322 648742672 294877890 651388177 590332124 716651465 466361683 425321172 834187608 93958455 552358601 636411573 604159395 876579425 588596917 902917236 783302550 654850400 97973721 743211556 675396478 729951202 201213611 76997806 508809371 904934312 190575573 887471692 333241761 158673160 611332279 587191566 952220473 546640747 394859492 773683544 961263745 363828176 570988960 735660130 189713800 867341128 784403561 817020599 238561747 768485752 126585707 500822198 387558107 607063322 438063882 346044180 893011085 248066683 526752092 412614489 238040008 826209279 796405420 815058014 75493602 687393433 511142393 286713045 911317028 418909267 234853236 534388673 794361417 602079436 264334086 758786297 673719043 440603061 327740615 553398698 706984310 926436179 178102152 500837074 130481851 620984577 475107146 466957254 859228767 500074922 780662725 825370796 381746913 474384979 381486306 777430786 75802167 302042255 336167233 895084565 119101002 614601481 20258996 8665995 316656501 256621054 435733698 736458202 111158026 372935616 525229861 788555982 739155405 502980404 808179276 708489223 90125431 322816597 168434650 69816696 37270580 768686255 465701 983184874 424860965 332811748 310277560 971024759 37364447 231900203 556430289 857490959 498971371 285332684 213421284 463277046 953387332 885573285 610780694 222187076 664839388 952327336 335393986 990139748 788133911 18039386 194301176 923343253 828317005 826348118 729507321 422484844 770893133 103838408 266932924 423827024 695877589 593218547 584789613 782682365 981260827 390448811 42880744 925584386 650361159 297747676 958232898 958370883 190773494 921595393 903693889 146288503 19870649 655856557 865274591 235276970 923008404 201739782 772884683 21308093 273293439 315675205 983388903 367624417 180167400 550056247 71795147 26271008 579787311 420320191 759020097 360010964 255892777 666681170 39278023 615964974 577860766 497307769 766567184 829036464 389701067 134713682 960030851 351870643 523533025 503036432 269939386 226395106 544120708 457309047 769600261 495211197 876211532 546231136 101739493 756802328 554688583 596476219 392875409 828845977 331485045 762676360 995601524 733129789 337931595 777727325 919830444 926858451 185626161 36848867 619294605 486542207 518335748 544378841 69344796 221200697 520975765 330213136 816527253 964492876 715337511 384841709 584468710 316566231 225926389 313915626 29678641 243444559 768493226 748881428 106985294 520169723 303763686 593197966 234534470 655893623 865856960 549620749 894732249 256370226 490995519 305618267 227586553 127071983 985390048 948571349 997937229 936307784 267907347 419296237 259210927 415766822 773832638 378874536 814206895 837391946 229603512 230622752 478482189 155625160 829037391 955625219 404327490 161784455 352164291 598882834 375477496 166324930 216734664 476462755 414089101 620225673 933890312 755882784 273130901 540496193 763219871 364034950 480835157 659132704 266908829 667602919 31277897 559683506 108575368 492309224 811168414 526337623 792887255 817330756 747447736 863892674 927237496 424925511 686772654 620344187 621271883 987155795 897215945 933419102 139346596 444393054 688448009 294638874 690467021 444494706 291002784 564810675 685384065 36243756 325410164 708665089 691112819 206044222 107599009 296346415 683634373 518480878 750878453 765060668 755253649 190758036 636757363 510341245 740301924 849211936 812936913 839514905 224950973 464546449 782642169 623531660 940485011 596265599 551608972 973181733 202170316 977610642 403411290 421577607 951186631 864572680 3390699 674815788 99837139 374037043 220810233 198094557 736831925 485685497 935790068 835017531 294793511 76618834 529046397 994991418 693273427 718963918 435143915 651482272 624082268 574217997 630249161 925102731 893911509 151135300 787109973 765491176 885274439 177899711 247759363 502989309 776949424 922365017 368516601 597060319 987018751 2940165 461952656 572637693 804997785 314120009 558194905 288712851 869590487 200692926 662623509 35092536 396540806 716382865 835943228 540876625 984717413 604736005 363977592 736681371 756882602 843805423 655401127 189332133 324298878 245282872 126481116 978175571 705622140 961936991 818904029 282281309 837003830 165907957 339379623 365904333 369902768 709931038 514079974 95890309 911446243 287018262 197976446 72556727 315940411 163910314 523888389 314069099 451261722 746221755 453782342 91614972 237854547 678924223 820808383 693849243 406678191 336775488 523530019 376297419 828407659 449264730 135823322 852807139 13138104 506515521 343245436 642773903 34762042 717600953 125368154 970479951 977872778 193776284 275858933 947296759 502222516 163603032 50473349 79117102 386518202 239861358 46089075 929982959 403936015 410315252 859125727 396445450 945825052 639242004 260241435 461595556 135042238 725200779 494814509 800919475 733722822 392652587 54120529 200982659 915871608 564288601 764248949 561978163 850745100 157631119 303448508 694699833 994805297 880845019 386258428 275417818 112794245 344533087 118970687 229381555 923534622 181482191 588619078 271283507 91185412 904049398 222435073 561299742 849012660 768407345 794364696 535385611 780116895 986332658 132608613 758394855 73408680 531283518 935776376 241281137 578333354 919070768 463169042 550084027 681402352 57636724 256945066 382787247 966938555 970809804 498124779 156177800 673260736 803362703 392611380 686713429 697004455 279081509 909154582 767276921 463287181 158008972 317829338 147023917 358213763 792589270 83286521 754309373 627682828 624502697 516235169 918150727 213598115 900468925 163654711 403890367 523413811 991682914 80816592 221980142 747986845 137485815 916533942 881745070 516281654 284873076 956652009 763099056 290683974 38324705 946762139 147336182 996585865 296299229 192270771 825075033 121092786 27265048 469379659 213143812 615064804 649914840 46352946 701405687 166252855 718278008 358159211 973070725 338113337 670361573 363558828 722514902 671276394 291030048 630921952 983495270 74031550 556878782 889969062 194668676 122480159 384375147 802484175 307234260 582894825 530793314 844284131 326293709 930461036 363852791 195840157 265836860 965038702 279039501 489692011 547062463 527093926 850103200 335676143 711534411 850195266 179459133 141282432 454896039 815472738 11891077 791444394 165598191 964339098 937349038 417449642 988787217 790072948 578433025 156294387 527552595 972995820 72310621 704095147 943597003 35073010 469722291 580304430 267829478 380231660 915882376 771120778 613015010 133514545 161958518 839897090 190025043 309155471 446655914 720018828 537638050 573227973 3719016 927096403 336426633 87756810 899629187 493116981 77192600 170772100 536714469 892857413 870448307 19426514 366805517 607159114 149000082 470927747 572473228 250206783 681711936 259239069 445759879 199568081 397075101 399416343 470786872 624110564 187055324 855387742 185969005 799674382 493074949 472121556 279644936 1741338 208152436 136555084 467686269 889506695 159821912 402812304 76162903 771391751 446692405 872498651 813998771 693190912 696944483 271320928 232383426 48930830 842998156 596236225 757559116 561165183 486654514 391267480 471237416 866633685 614416678 293332977 135656133 32150856 702142226 594573518 12303781 478908994 363647473 401077154 400472028 107173857 591433105 132108503 471078037 112102008 256073240 625545544 928594061 11734030 132553852 45404871 342928022 293280477 160334602 368095896 943298070 713450452 942064608 642951156 18281349 329821462 387574642 536522376 72567539 541189241 113455881 656094963 544144511 272382984 707842879 502904139 371148001 320351362 680685700 148875673 807900129 57482712 451422108 936068696 334294749 302192563 580412959 138532602 98159943 939334635 174735608 145057891 335004965 407644945 971770599 815733100 444472720 915584742 776306943 601266017 346523445 930338530 867419432 478540931 947623639 232495790 298408606 886660744 825736138 883923114 831059568 948933398 552383098 248206440 23248386 780058187 289896674 89299758 712596875 122833208 609389846 794729081 274411672 692979809 53472697 817466997 869474439 814102591 76660359 184756869 320288013 446698430 782580429 882633665 822421169 477807295 366633964 855088499 46890830 192822935 269910490 126326681 295190165 884945038 650081696 804523367 233090184 429865057 617914845 311900610 646522881 879228097 636345153 40349637 550922025 343266258 756196115 101704512 639661057 280933805 58830252 492002100 844089564 803661022 781242618 884141144 352785123 338660070 524864766 897966999 905229968 430455482 955310158 555533968 616779827 123611970 467438739 291091477 538889840 142244315 171930380 855599276 944612031 585437398 663623434 711355153 567342571 85019127 581128818 888727730 560767124 297236214 968852542 485600305 588785581 769488385 491594492 727233510 309134590 522014264 978358605 630975579 121568675 49027120 31650919 231344334 583496843 307013233 317400724 400396210 342893818 10585080 533514673 34811182 950826247 372867766 308264368 724452252 879668255 555646478 63945494 538069003 544379776 293406555 751284094 112194238 10932415 6285928 610519572 800855979 202307650 703541750 164098074 936946429 377061831 711626809 974222182 733637523 509486811 883713883 475820258 180915582 248146788 124777464 15283979 105828487 445654552 957893025 980112499 595139751 759791875 707884377 472282176 130517132 173860869 183145499 139183274 892403226 219685202 432119633 900508544 52687080 349615088 37816158 296724132 256261823 270374460 937131542 734492298 306595871 258180709 990644033 212653245 60696250 4955376 172777243 68881499 939285495 463511858 360500439 564774548 242318704 248095193 589791511 212898094 664307060 284085092 836024438 106050820 829166982 200906406 322890238 489940610 764785884 617058119 275727282 722634283 58086113 696119363 397079814 844018452 264136115 765546601 794751329 952079206 81543845 77412573 159662242 436268767 457908926 946218902 670251416 543755602 202967865 780911585 992189065 240343842 140730371 289006300 539508140 939337675 138613825 449214460 629608879 145632346 825782983 255555975 953310769 296675311 969935009 579133211 474373705 29344322 248610702 36671525 889499389 899658268 261868160 356652651 809745868 858700249 239074333 686043267 874000677 747325421 271060289 976769625 409143533 385176412 779906938 27743149 302196478 660753471 339779979 706711698 509918626 152509510 281469417 850146289 250346524 226140977 939764545 41412612 554127135 160141654 795639536 734403291 625976149 337131551 496123273 114846426 680635865 388301960 352077651 950559545 542910141 135385509 946334920 790525571 979754885 867181338 536042776 645928727 137484202 225416609 684485284 135259562 719798041 831415176 771793795 799486915 763097777 312784688 269136896 493115966 113556681 156062607 218897177 596541898 174642087 418903215 996599554 830541675 460793866 175992877 376782240 788441336 879820192 69473722 554074895 173964702 373324177 792912798 134838813 571957339 399941363 987351856 946059980 609877124 395748179 754419039 336635604 134895167 629257010 726020908 610503198 114048778 896225413 642926637 138793290 74189362 622342453 399057164 929528874 932044125 513241501 233799174 264991301 10159873 985654031 369016685 729143125 244996842 266849359 759912999 361565129 349513400 789068822 553965100 406016324 917242462 221437840 371698443 708197148 621416613 889113311 610701414 571609308 724126119 127575958 575149681 702897346 708270932 763189054 470015607 791486529 291639280 872127444 708156245 53583489 124380819 678099017 513425405 739730650 193516967 155764993 668801525 514560349 367671662 550998613 165062613 107067723 893322874 84248337 207265741 850429339 950778419 706014454 849772572 842052472 720112469 165517113 598470042 390004417 923653231 945794306 611122735 739097736 115703908 82907118 460847449 577648531 538314990 281668238 473289387 832193246 769668886 945029862 667651144 83789335 713008061 17957102 73995628 269447713 600168983 278070036 680781539 788018578 896685099 948073657 617824656 886559028 961147220 103427759 120100584 489375879 565952707 858127809 907277684 946744894 137935354 329070892 283560275 797658302 953888594 16734494 927535285 240250530 195731062 219640126 888761953 493284665 230818534 979290403 360845872 374604038 826914933 414144219 873634703 890628160 414381004 363442534 488424449 658463056 570804453 532828985 651872667 765606229 369054096 42125500 712067463 211659427 229558769 305462476 439042177 771418431 763026176 90584378 153366877 678059365 199125767 32774473 703067519 965598723 212423720 385733684 953212769 280525115 914365653 728413606 420664593 615406821 465714774 1730624 656545968 307159818 957298503 820675606 27118836 653440618 959223830 596586802 156813222 245351671 522647433 871676944 813898277 798357592 504692023 80427040 730929634 116204135 939367946 974730824 27261666 813509555 159914179 636083551 461106239 231006207 45382774 388253875 365112999 202801857 527260937 703827588 927792347 185932708 980420026 471619719 512114226 686420230 590482326 937043043 943420691 644466299 910369795 60059191 751701886 745192264 408409911 744544018 346772356 173847784 30530238 826391418 708365771 284891019 299611128 75372006 300162571 207197330 387033752 139093316 726759315 258780437 356638502 80118644 529254852 235819613 521893246 740939722 613512853 52057194 594934095 509198736 963386638 137023085 630083229 817973890 524860365 580699471 648221760 685202256 937196932 115261481 778222179 988516895 180049784 899607754 307028741 137820936 228557316 499690549 438836347 441819288 866972948 69197087 986013164 37964367 484699307 196522613 692094932 601801505 150006109 471215572 248301186 713606136 715847893 568335375 979601561 917894191 827569232 131028909 960635283 140221976 4833057 116333417 58337337 604022648 498005291 663780528 839029548 654602758 99938666 775644710 775386464 938909679 620556906 849390113 896975003 141361749 145520846 936934701 851147259 582358475 613542347 42228358 598686317 274431195 766300586 657351329 513436982 23258752 258222153 779281827 747333230 426237612 799645595 736553960 902339456 253620419 400306723 597094526 624550316 311344158 49020797 272439719 294567558 802453642 281479894 941944667 315033204 563552454 919643503 911308739 199476019 773682952 383196957 865981375 304373842 667584377 860025036 686986081 385153461 767885492 456526584 901754992 164944915 659469387 60637746 517350 212090745 8185666 558804897 927482739 857558470 526239378 571116926 982911991 641110317 344000935 155329431 196450315 779496118 360205539 153794509 672665977 910101692 87475737 349726870 959939264 366189424 451829010 121101691 436432273 989825365 903788044 227681691 31811924 631795650 478888501 673201190 384526244 4981603 878252596 179714788 202343631 481822904 337201313 867132588 55104087 973940373 283635848 718887917 733097843 782641312 59274731 702116648 380798350 688452567 377589309 524442995 258030791 544691463 955728103 634647288 715723888 813478742 849400774 652380532 986096528 937260217 727205803 989322424 318702945 532799102 26668762 258021676 168675282 993316804 550841228 152675911 536689669 358992894 130249325 478097176 940991186 999439221 442156318 892795584 870347587 629270467 323823284 649588981 474966806 299513432 77563959 766954113 848198462 278013688 416785700 461653441 743981155 99831866 905295852 60691751 522788189 263521803 878820979 580602809 215411644 371275305 653720721 308562319 985337411 473295529 774199956 958309464 888031081 757398130 224543676 512762838 493557719 303093696 807744702 257061981 625263852 995053729 144622658 476859736 645871420 699718523 626205029 352965573 862722316 300506500 476258872 169523892 9315032 848938825 520297023 13772235 781732814 15278376 646782194 669899205 78455889 76729813 903737407 526100718 629257334 350640857 557680902 968368041 767744650 496558350 631677340 862700778 278932874 34750244 761934409 441841341 985289129 854287904 303166922 183684797 807644366 170499032 210771919 500352157 473634579 296857976 720633214 367203491 250136903 550666239 266631150 606681640 952691053 561233091 672091309 895028249 940319547 639910889 733318203 939850617 19484828 663757550 640224909 351606237 749384238 157767457 20752266 318790126 253839813 390591526 856846737 978036203 903002854 306143348 591185906 716038180 546868045 713666520 152613232 776990592 625616743 511325168 544581317 306851832 58930393 227627697 308826910 717866777 157008119 577263330 626219675 213906054 456325965 502623903 163875025 606595700 735080986 302404566 788990279 155416109 176272080 649989325 357994492 194997901 805886102 355032218 881491423 360824968 311574726 671471529 880308054 337868194 307608431 74306619 392813240 918209653 136924116 344923361 203024595 437041455 64493290 454751493 782957926 751235601 929973726 441552737 104371112 177946609 301348493 828354693 588583616 85188793 370078731 240387413 597260362 425225190 647491869 16297865 97249496 880438025 894860478 110947884 148727407 192811593 929455262 518442014 824150278 871698656 900964254 361756306 218161931 161287066 829359701 75404688 780068829 303979353 560279438 248923252 529565778 113427347 912511176 569639021 341181235 209678546 241924277 686228223 378235324 994583859 611582907 337366146 369018397 509631720 533310070 372841120 946287611 235165878 310844468 384090331 308639983 351422584 833130359 241076996 345645830 581471130 121435255 496333253 208292159 94907806 731635613 106643737 949206032 986272922 69026825 71929038 115344866 223588280 947956238 872385290 245545360 466142134 932045744 139365571 648949484 417932644 35934509 547032133 429586746 312725032 301171057 865475504 206337971 474213501 764414624 442012024 25719812 392885871 899095184 774577891 294061260 523726881 616928588 183521423 843509281 936717383 154616210 566533865 967757836 881004204 637033302 312707766 877927176 297930926 20610621 752566670 734057607 962949565 345647139 237692508 816991085 739447775 792845717 771870176 535461011 585804335 263927384 698643245 534648645 545821529 711579104 300768299 325441477 91528736 474926554 669024790 949492678 714145241 477437602 180609021 744650993 561681645 978376653 970841924 181198691 629358939 219151009 512587298 300922925 479391027 835279512 37991460 726044627 150342428 690300897 879262888 359981774 597671631 149225951 447199075 986557450 136669593 260124072 869446876 848491368 387001053 688851591 317146350 129705533 33173136 178087546 292589386 608462289 86490043 321332404 492624370 231486434 725965053 412784156 231609791 780724510 393176327 634961357 870122717 469589420 973399837 101661588 321189194 47681444 609807771 955354229 179705178 590455186 249937006 49475879 197734454 236919031 880716695 963732627 34835544 903817928 827302828 961632345 928292368 815161837 379214935 468282186 987120642 168744899 850186453 206411759 787977126 669327515 751637111 374353153 889658823 512173113 68457764 753968111 476106501 27139669 158691798 950753115 386682451 530950429 479066904 433515421 91170169 189435825 921887119 354433342 145957267 281201830 653823598 213210494 238980496 304176260 981010432 687675088 614856883 813384264 789576738 339256665 273822998 135969251 785351365 142137204 972308514 135564472 90060913 439143984 147610905 261807650 322429629 190209488 540515212 602201580 477385432 717505610 491440613 104480471 77397507 763997641 613961183 243698967 57425429 581827372 224064264 161164502 958347766 804500100 222127942 31613616 618501156 184990617 279156559 283638326 520304433 125821542 150966063 990677099 410748482 409636761 132743878 521617482 175707538 297557780 233081416 997635390 55919341 624327279 908567227 156963239 2917941 225974643 341991548 793335132 155589601 731081376 753910202 888874020 717572985 596269992 260347642 341524540 373085211 47272946 273588625 982819028 393949945 540485912 617975341 988143250 878916569 164542313 656506189 851030029 759365011 602094696 404380100 668511827 652383383 985154379 692806458 743786339 668346724 973116796 150297259 698422964 492101394 296872732 982513382 919624621 266568649 778939771 691223310 42212906 760189256 364292001 322189085 598288126 156312927 287280329 508979804 650786411 402836597 539734240 699424237 897883819 324733955 81568010 359038273 738841195 319925014 566934558 226096802 669661003 427485393 209604389 35671467 898002015 897826025 234089438 530592714 110335665 595145255 528532797 434282181 726471612 343344874 104338920 291243826 70512114 798206370 704695481 207685373 742366520 842310486 444280127 958733798 439301477 44395551 359392316 581860352 374936774 150922667 297884712 785399860 98209437 904212923 254171565 129279676 382621597 13102756 763771945 341467560 471030384 622153682 751482415 312716124 604844593 162857537 740771846 553568016 438473970 76294914 640139304 606053199 467296824 163929020 735437764 525140600 521012602 775657768 526514493 162894144 198825637 250667412 209450666 808575278 548255899 752130401 463580244 556578078 673208751 104219014 589637946 737004479 803580970 809972746 356479888 511452181 756490954 985007757 26910011 960166903 927095614 160519872 531438679 174966418 943620779 146832616 640522161 213399268 514448938 786375263 84402510 593398338 99055431 52088339 856734946 837555922 338459779 200578822 699333210 863952914 42007508 911516876 791020115 617281871 451920160 116759568 449500832 362710063 240231109 223146255 682055879 245443880 943394836 165188123 173791877 62010374 51409361 483742745 66068038 954650729 484757173 528971011 371908525 500938820 583234028 142703720 846491154 179225184 500140952 774500839 107430143 670149846 591925580 229645751 418711219 199862169 89910417 241541922 381482143 83976938 720212324 957317894 279981035 73289186 780068534 431520851 606338034 624038123 342029547 15786127 850371777 492764743 28242012 90870869 117774236 345321096 214034901 435628497 346423674 653659926 330985751 589793094 364541316 496953517 81583959 35573128 43226522 296896988 105791933 660821634 792099022 668118918 220229094 623654322 500782054 242836837 845745763 577880744 564560350 984724098 697015608 868790155 972618852 945115070 650923102 188177299 937402971 338693709 32533057 870883216 443856984 215224886 173192258 579636834 247149352 389871828 990487862 220086654 925520456 43855192 986011621 609444720 778565227 312212804 896119180 95756371 910293496 874639601 229371995 677766747 870311818 886197770 706148856 49351755 350171246 714942479 450209787 986386431 36614440 956473555 547993712 617146596 195261934 180790015 982239320 57704059 918393131 796129933 559209511 995709146 875279358 680084301 534864967 26207530 253959352 907248995 720174996 828453930 334573410 220536263 970245087 559819434 650122293 517463747 621915243 109308945 297473055 622482553 263880819 514671320 947031877 72582491 517046690 832697613 78315899 50276017 619651225 731480273 502347470 218493206 848533868 186502874 491547131 594213115 867841573 660369138 660770549 516671267 7393088 698447990 311210339 300562213 736878638 991840983 351310111 60524014 522451922 192545309 868970680 930920508 51653895 676125023 970133489 459828516 637888791 556250444 943519296 450448524 522689093 824660133 335603023 377684402 405727301 932458176 425945471 329771427 440853695 182063623 194544736 401787333 735009231 324927095 983834426 608262734 777969800 859677218 963301768 794183370 606161260 740131757 32707960 368446105 144200437 76009170 367894124 615999342 835039760 794496223 195389307 439956945 340903581 839804726 816931312 153642398 252887024 254683083 803787722 778829444 340055379 598842793 652110395 819376775 219997314 588128621 491665962 266741887 855559725 780884937 184992945 270776471 394440313 290984451 123206559 959276238 139334528 818989171 146993142 568867705 468164044 471683848 353592942 289209791 321403104 302304196 182521841 746433052 303431599 792930619 977198621 974609630 964270371 136511257 691376069 792804523 817037463 281073817 6238064 898781945 360807517 370092302 600879065 63247509 370970170 552770142 935226989 415992349 512272357 6264193 648977360 572123782 132333451 873000199 394427992 569393046 285562958 786369935 682246800 876323946 96153281 752234065 940202935 343871986 170206062 299830677 383082558 975018864 222100816 548294970 589756494 404459261 77825625 941538096 128320576 422738948 365820909 922659838 230875938 429449157 920380261 87472957 460111161 844990419 385987214 53924378 522570361 951927447 409295911 660503512 784545551 292383179 735365735 945945676 172842456 215102719 81410932 468931679 685733607 443765783 980004332 446573200 186633219 299187658 934577504 134789487 423250726 736729125 953113300 902022179 544425215 422356743 883343169 423213797 251317617 34059427 446640660 132358531 267295762 4025856 924375980 847141342 756729517 500730236 186271199 805636716 537126336 615644997 432052341 214315191 213368575 618813919 243250092 124849627 462264271 972196001 435594419 77054732 93344716 154988599 580826671 149253134 789454147 13033249 60180152 877690811 811545528 592549427 638941021 605478529 282846818 426835731 883645980 138476257 21116074 963104447 714045547 155395057 389001904 645207556 425582002 599803355 730075078 574800903 4194766 19199580 754780402 531040448 828963728 694351686 598145904 613551482 193518908 277421310 382736686 274568533 321402635 355007742 80249167 932111812 125640105 255012948 966805673 156507920 868366519 927482402 874532423 891393234 240076618 566400540 365232103 967484029 405113450 936226061 287156860 371536338 253410196 552769362 573668525 352655721 703851833 68752733 386919765 360636719 282300221 177964083 276512257 324219106 817540984 576821231 289828213 346834071 355031096 99217469 19720743 227537717 192108734 821716703 299704002 379923192 535790012 475897900 291396261 933883374 850399197 984336780 23157858 6490749 768648765 836332029 745567295 404210139 591658733 264172689 309767864 115299477 612107121 384166638 678332667 81509129 417066305 500523980 941755242 355459051 447245899 338824059 702234653 693345476 848843631 410495066 814919517 685368942 602988290 752386401 411971626 85693337 888808268 389430936 431191222 386866506 511819018 537549213 39418088 433799511 274598892 703195683 869073627 278803180 236412184 308379757 307503964 397851912 153350053 279779799 770652783 24909569 626628897 88475982 751436746 470035708 677051916 393313234 949781848 489205366 244603483 979398907 804802999 651724990 183230454 438045041 503638715 785543032 722575161 707169139 416814569 771276571 521535863 469205841 422127356 112852852 755686770 141206514 160122468 500101665 408288741 73190223 449554370 733117207 477873146 743286518 252026478 506755869 946568660 657053320 870702065 97782350 773142279 305114683 206256779 936884379 726589723 763441496 39262638 28280903 386088972 527165118 351642241 145030761 796084429 282805597 957116510 111254381 291440576 488241340 895677780 640200595 489424703 605308277 794721957 952320367 948746775 534304691 997995337 618911335 463947272 560172986 871713386 409190713 416632390 146747999 903539686 117796978 950287867 472590220 593860304 515500791 337183426 993215678 540201455 895895680 63241518 517397895 139982398 98313752 623561025 890823692 326703466 262458015 388442357 45214087 345264727 591283528 211226807 776075974 853689756 134866971 889325030 448597162 228655106 734016628 288896345 380317354 497475336 183656322 884481494 635632973 76318050 224480457 366859932 617653939 756554614 620084896 866883546 927951629 745735134 719494324 46242101 285920545 935541224 155147395 757810246 532264647 502566425 99788770 849232666 766783342 870233765 423650680 825836720 445488791 696011769 76756801 858762622 974237785 73839922 170533643 665159661 568633308 879753891 369889020 846457560 641011166 427969107 462933514 886619153 404755249 420887164 745911425 54588125 572069179 519759886 231820929 885297779 560250996 131611433 259465342 428692608 320231147 707463079 360279486 647467941 452521154 666608528 121379038 725407224 740404909 644945315 941939278 560628095 192879736 882499028 496981200 920658616 765711230 514365384 651873789 854999316 328268082 639312731 990118080 775414135 535677338 262702874 171918809 599820986 757445070 323485385 904441947 181820969 56469630 548771295 385539118 492952582 664263274 137261573 18318990 508174340 620986599 873251739 899475082 407790540 717156961 649149491 542540166 160267643 263060179 769210644 305683385 504853538 802848336 89879992 964312752 523688517 566090110 804035662 819131849 935928925 825427478 887628345 406664889 386771286 299542374 194937998 284972039 812834577 964454607 929344666 564972942 146462435 970695750 71253083 137309951 914018325 72364247 32026370 891920476 445186658 770205469 818418039 701113470 711558268 220093388 352406228 852477329 188144262 331224616 491668713 115471763 29992603 900650123 654561975 61800152 726201158 536548579 88047861 849135752 45184520 745901873 823764623 572085024 820290006 118967307 610540321 432736493 873779608 799882010 661169536 360156820 473476267 153991581 187144241 967657869 399702880 489555173 189773808 107713699 563550587 798148311 715639851 595149942 939572404 636981869 111860613 28918777 612698425 416312885 754512979 317840628 271734315 715312848 976460066 464849538 534604828 355757428 556810543 621185940 109264279 899268203 957369581 54962029 822693784 207884178 983686275 860650021 225584656 706634459 883728971 194804518 16228451 534799563 546001749 628678066 875244521 562133244 113931234 262031706 131255408 338608796 800372201 879233672 323241144 419732205 285079445 194043639 414651126 640451011 178965444 357207605 723164498 822066185 770398346 492515880 430334568 848450620 19669932 608787846 264222667 706883310 858116390 117640795 10367101 339195204 851571110 111679111 873237881 476876665 841571598 74973757 181813290 232289113 783960821 945598598 10493681 656372935 102459687 557225404 830505378 646406711 718800417 108038159 759395335 251717428 953355670 829858307 59210332 30429916 921200364 248545520 317051345 246879 709166527 711047041 759363852 91302787 927272030 483929654 733799588 519516451 351462985 656847842 194552743 219824555 790600377 941381677 500542485 27671966 438498072 680219155 907576674 684997648 120642436 65830499 859915512 784326445 490799441 500703808 998429874 946225840 162572164 571733412 243095907 190685804 672961880 289332184 822049613 682353351 968723645 582977022 149086378 610298170 127169236 293120903 103113255 705464530 845494900 789606077 413026148 967282354 449459880 397059386 320911221 200892047 665471791 356356207 966118244 894467890 861590779 478579743 893653676 426357498 667319475 219169505 602303423 904392791 546651440 406925985 183676034 147505232 783936515 289267487 314930380 72674558 156805614 480659566 181007082 639367183 529090919 189797239 934573086 494580036 30333720 262664820 196176155 835292915 75361377 634559861 75687051 177266309 689174997 257316062 287787401 234468601 193245624 929231847 526057512 194351968 815760520 743151387 12428266 79650143 517678449 582846169 244624969 371175856 665413335 203053014 227846449 121266849 939238096 773278617 886507908 866741907 712698279 707724030 713550741 81505916 209356891 195351732 523377069 338304102 548518173 343760831 376808586 342135790 812349910 975318006 196590555 99160261 360272030 476896390 165540549 315860274 629518406 545210989 326463585 572388495 27822287 47154944 607333947 419344840 731677681 267505253 383998677 916274655 712332181 16105498 498609698 63755882 430363739 448038764 774022155 950320659 515465749 473604097 214822637 909328663 15952970 960030287 211916825 258201032 536747188 6580258 110615123 592822027 117129666 670309658 431430228 789364443 939710743 917091626 748038984 459417796 977649161 546805530 983597393 684398184 978330147 794292486 946310146 156603390 282332579 811984094 936525028 338566350 500348925 389403876 920625140 313958838 324784726 318025264 489485859 349342120 19086857 40402223 651389909 678612522 128570150 851330592 835614563 705864660 191269102 131221910 231096217 17652437 723517016 709349113 878094904 264156015 909594256 829795077 562166901 364239991 422979954 811717704 733720952 357083606 361051667 781024680 26475742 852435722 434779961 800168668 517523768 198527909 617317342 485632750 479662218 416491469 362442161 587145919 859091149 491705019 853322644 821596035 801082477 15708988 4145695 5259073 678297803 872483891 748625436 619330900 570662588 91154197 794504969 846953708 151047944 219833963 946787737 513511822 651521772 134091860 615664691 210481040 638006936 829119232 826397041 933864606 475927986 366778166 969114787 488240696 352042962 252571855 565614666 790175281 724581636 783364920 7523997 592386354 312297033 323924980 974427655 528229685 327219222 494313240 811494310 508240394 849614547 881976782 867379662 822714325 174159196 2278098 628061828 690841486 517655428 211128056 540448260 411105151 216116366 27499940 380531004 258984906 394511794 679020368 618375246 799217889 159293598 723053578 602759442 174592524 598755826 257579507 575176081 854321638 885938115 964886977 412640907 686246624 486764057 724265789 860622834 818544573 685360496 417801158 696949101 737837588 151002427 300013261 213205718 412291794 996843612 914954327 187329212 308116661 2173870 702385534 845602018 480838354 483979388 438695152 584536766 388129039 105508102 280588654 981347835 324485802 951798019 410520654 892810487 183885488 319555610 516730874 716445510 605286022 482672743 335716975 357968429 938204772 747478269 296015807 969644328 620639190 998359646 858785423 432942692 6399545 231017733 818068122 225767237 359539524 62572508 833514284 706693858 58474364 251909830 380978599 943387780 671651518 458939158 186907138 379888683 333575865 647958038 246792517 625578249 429014385 441586050 359191054 506199044 239973310 23421962 797433615 147873336 809599947 328496595 853856141 761587571 756879255 573089527 191293923 45964984 705419639 303257600 860438013 616649917 933513874 774560369 935577053 330159212 44868452 291158845 190533658 91976037 930559547 829902670 447819868 618333307 469799357 485430783 85103073 808300595 891877728 843905955 556500475 796728648 714967537 226285564 939233936 415888682 972636686 271785156 46677145 872900730 626613420 313508904 934462627 713012111 849379729 897437511 207210321 341359860 246151642 386865335 344037335 209237479 480767607 470180097 397527681 467057372 757423274 471365408 618708266 270424569 236654732 315296518 776378821 315576727 632212872 710902808 25962200 536116935 106374366 212013997 832725500 206050762 603430945 803400594 642381407 106229912 333469626 948868233 98322753 10386267 1352547 29926085 515107962 881319153 577341612 844052079 136504051 486155629 178716025 171261477 49403176 815163541 759525505 327043445 587134381 572586598 434430417 65190759 760982950 873392012 783937864 224946928 381826381 608938987 79736088 686418304 315438703 115844377 575354443 746796917 713563887 498709217 136132924 807891109 876201282 383621057 529945626 391659737 347539186 359229292 420387176 262245452 549296412 740389706 115589760 505041456 498497265 610811123 403770891 174573865 793593400 656259768 139413642 684719056 59688907 433092634 152853713 481706801 860181013 105500240 476013702 14179661 987765659 281176262 462996646 648544153 654116720 519716249 496028161 126572413 146969534 539578395 463247801 306077399 80676932 144954709 854720967 986628725 164778707 140373120 45417334 440226974 525776848 881779083 947144166 696573322 150388406 668527513 495179402 330972133 389856913 305907584 766980011 546725712 443461763 66473034 395948770 903768288 723806786 963517879 64945058 370936221 601255576 631122618 286427564 176871684 442751458 328782328 968098712 674940806 518563986 858582092 648151379 13437191 183727022 766008646 372916379 339850080 400810830 517341607 987734405 620381405 424663329 610071014 100244728 396589247 769156841 248773294 207809839 640394170 128377594 505930078 438929467 402637945 841913023 974798471 132906623 589740054 65591093 563243634 983386418 89224354 290369902 379299224 148037345 479195043 331957520 259264807 95432682 200806032 505732308 185454468 498057473 81817943 220646663 804810435 848334255 909949656 596427788 215671089 586129102 944605032 358349015 937241547 583048462 871385423 802630003 984291012 216745332 467641162 191548798 630448643 730915798 953941257 281536680 751617954 929728864 59811250 215692600 593011824 508235025 204032092 992419974 420049520 583668798 685647509 187475842 37884248 542522639 676607197 374666540 156556563 973964541 402310953 105751321 488708672 40409435 366037345 339336181 42461360 934389194 51539426 287760379 714744811 4698306 508855804 560298367 644413356 815795216 518159988 520235877 579099233 390440274 222712836 254975911 226885548 768899197 842008535 48018386 368578276 688858200 502173197 206039945 355485077 936270078 43196477 809732865 524535804 671432288 355228142 726579588 262206859 356765377 330519324 454745582 376174955 152640312 412688058 468327219 520347381 196133937 332675882 947457239 727004728 303596524 378855622 889673588 947965559 514701565 172455003 637559096 224284840 241640138 782794153 586439780 219205109 331350544 677376996 643865550 724642367 301856095 889377846 873999200 372344470 566229913 803637307 303201430 721880002 33140855 289422467 707731204 985224382 138420484 574371091 595841230 908835127 468513824 788230116 829336879 853206033 224613630 307206499 545744114 397308386 549606310 902470383 865641212 624254325 525999476 358584671 687838400 65585225 653930903 42379641 140882633 484496144 667802515 663889532 391223092 710675504 385654719 536445079 7441971 62031429 933611464 932708207 962102411 939974301 370609452 306814109 548515350 172916666 869894080 722181166 437950530 499938260 213249067 302268705 921975441 391204181 833301608 625308653 275120407 543552347 95346760 847705848 259177727 417657401 316527086 545000737 862482182 958690806 345592401 270373431 669985790 444777676 393795005 976456575 40269 724945834 877478994 658684978 516931435 725620915 40674436 655243772 926807656 188437949 510977433 717353855 889722979 911660243 491549230 790137038 693717524 55250100 446908595 515037170 377627459 440981841 153834986 502309224 134113102 683588178 367160172 410579105 257453480 774040978 774620708 40366209 909146708 878731167 444720337 539191265 666484334 529926203 475579017 598563342 497676962 275836126 288065329 427576647 661448627 406486321 898074629 235124034 184641270 366156180 623898647 552263079 63728340 908380057 64039111 416386708 212810571 345395846 651781712 524982551 789077102 388857304 973114939 401671095 866861281 656611771 402829802 957977324 428606557 686641554 857692431 989802914 450969650 756464757 962204209 73895867 411424704 914049454 757491502 356456586 606514429 476787515 466345908 151436120 824208114 20886096 282591174 471354338 439068222 126434770 581038653 163353817 617613201 728796892 559183684 255635041 456821298 770419518 758098652 75807378 750532218 616733689 855167318 840044538 137656919 355929028 376299995 313006618 288379338 102227338 215492327 725141476 795284329 494549738 348756170 940489796 617084638 680908470 805331494 188220052 93105509 96696180 36019316 713651493 369609810 835188192 133715071 137314237 393585545 969184616 354754278 878708756 99514884 983227566 197096094 89341526 501178961 747565066 874821999 904628644 223342865 262678534 67960946 320614034 914279291 246151648 355056793 474634154 251020246 846037515 387673383 166529512 204496386 738070190 674490932 160451901 159552496 332584483 635467562 502100749 603196453 785476985 10606923 533934256 572486716 48160499 383000104 804996084 127948129 868313735 102372907 671646105 902300374 552497248 393707278 172286932 411388017 244970845 825061986 463529165 827471644 147074959 780008970 4998945 267169109 816262335 974863037 85005920 883844523 21872357 709716615 507842448 313667399 969323698 394767688 629939112 25918560 975928327 244081971 21604886 64643270 346679932 488596817 201431354 264007768 353359834 8839164 697712872 561654670 276354721 497785188 611874538 721560048 671488643 875130381 587024252 714284700 288861415 929450319 169371086 309310660 594503527 18155477 645094534 547116590 871799378 191915039 287084091 925775794 114924331 333646592 810062843 148617152 112067368 677354016 696024518 948987095 623139764 699975802 554747664 808297487 302608621 483920095 827001155 557803408 47859750 73796722 880190523 958949145 431553126 522602283 137722568 598879866 616974056 459305044 794624815 563080218 668329369 951393039 566937513 476759409 18855838 623033549 192036579 44842895 473543627 842303960 69346941 915453332 735028524 813299658 829350795 140497717 221253504 859001364 489108247 291021630 908144057 198946424 424244892 98669066 943245437 144061840 558465165 693550093 605413544 758318917 172214476 161120331 10133960 706732376 19269939 862745310 616916639 185499100 979390991 681762675 48243109 110054841 611486367 308919245 899946884 997870379 662690202 414836289 315646874 369538114 348824486 607197241 97761402 684407648 424067042 325459122 601345643 42994110 6083677 438549693 338170343 126078438 785684636 945775105 230962206 383050810 950031896 420327223 832569713 64486252 713650877 802853549 175769591 851645700 775880045 238409412 789645307 609669598 163557499 727057522 779144315 903545001 243661873 925433793 652476331 884113001 867359562 345874510 770925936 359899381 769864056 236168651 752037862 815859065 910885855 602053245 446259163 862790902 93990808 305271742 798908753 515808957 669346351 87926908 907470336 754376440 614909990 446613944 978697169 414244641 781175664 474689801 344083300 490136713 499033078 817511191 203419787 702507731 128606230 156881952 150997709 411316854 723789086 584998005 679968228 405498686 633077718 81437438 740317759 198188235 328038131 890232242 388568961 116662544 645237669 49369632 603720448 904800981 65136138 59876330 804707911 932007478 727714744 868008260 572735892 204225315 205132855 970061177 959994970 112253406 751124868 784073062 653959616 377062271 145219728 499552254 391460129 355570291 683275711 237736132 126247051 316651769 193464170 411621972 368217408 788155812 466597981 847932122 69927479 439947740 889360473 143868057 243587227 849811036 819910803 118297701 659249227 388779445 723396659 874989097 78747737 589703882 916345559 119293795 671010187 725017938 191913741 119417763 665022685 626300506 884114652 451772175 321552381 628234432 598721084 87423714 468690382 252628409 56342425 45251561 848304358 474544460 326736468 84181252 409400847 776932564 933214018 942790059 667258569 37370753 542772523 905241190 370887111 463283928 425314636 97542996 226981230 912546095 753845718 456981157 399359577 944674866 530941036 38544672 149801431 570726241 402568873 258481310 674163819 293291663 297668248 528712845 813647435 963740260 653387578 580688494 316050915 591259868 662032132 498630230 431862863 911879111 432466526 596667249 262596580 838864711 374068261 925085307 701004967 706724948 389999145 324139589 751222996 332484411 108542896 91569718 685599577 403019291 311770609 862147783 738507352 910553447 300116122 44319750 817065 709277287 649634891 229711892 271686485 980141494 604553497 598871463 975600668 435139525 365998348 388150409 197043184 317537623 573821601 847790615 265770616 50568195 266664776 133368770 280180110 772952246 867174374 649301905 120548289 564306478 607956309 97234078 32756948 621441920 272754400 785918356 519583805 942308498 44011208 316806456 494540711 932416161 922955457 589201629 232062832 938808509 50873461 987822830 28855084 966178888 147395584 771236712 909184032 918968699 268076658 574655068 442305479 549254113 348872272 395757170 243858001 772957914 597595156 644247393 217237279 426404378 723963048 198934648 922335560 75272231 546322415 990370073 418469400 218391774 467940157 634734904 481450380 336358894 167187929 238837728 842221270 41248603 613768578 821447086 957090015 974303741 385446119 782327124 980206784 870474750 692614190 760656919 608411720 960591200 256899950 45029458 214676602 243411061 995348788 89623537 684757515 808367205 421822722 953504503 708309480 571844523 84645835 743468536 213386158 480019096 921401465 396713119 249852976 452886479 909631592 74066474 426050549 607385799 637184488 505519081 975906744 45322317 743038142 985814466 151464166 95562495 597446307 921488560 436112419 299882449 702269380 37435711 632285125 212545676 997606208 277267986 534672471 800602698 406064046 520998494 683596056 373994492 191551380 93013612 721183866 299184868 779451377 65390619 411387043 493032731 627262132 682055003 711805423 413596172 883776834 765505715 140165996 387903223 731686644 562220475 264994140 252243823 90892182 535899043 366557111 376215005 904157162 269392811 495912102 453039098 459943459 453679529 976171785 602202969 29192298 738336390 46137586 11216347 465907037 711955137 843998760 381240376 757385867 82242282 448176805 364132989 935563001 456573480 662101784 516851336 97245088 139734196 912806244 161761934 390733804 454693468 852155679 252009366 545590334 165527297 361729044 939198972 451662955 65874713 220095682 175732719 515668028 871957549 268325594 115996658 81258476 529610588 893468100 603044703 53211821 897819095 603199259 96949471 806681891 720304483 457222445 286523635 193438183 947878618 777528700 179933295 165693445 554446506 277225791 804553977 425554302 838553428 505239009 572093838 271100359 145875950 217337217 5766910 914857032 324077730 504653169 781920875 16991455 130995501 590198968 893390 972482650 177258849 382215312 315476082 504668416 427022243 166755560 462963575 60754185 809481581 749995746 719253072 66113825 249800653 30698838 466753349 478272745 585344996 341953358 147715570 841339254 388534121 277932168 236422086 742452176 370536228 822164983 616990341 35281781 857689459 24552002 364598983 766948051 213141192 626643524 759122551 96789969 642639400 740896650 529848660 41474631 752461741 847741656 208512371 181320833 818697478 202554533 302618555 164870592 235606514 651887002 783247463 379391161 302111432 559137046 291657096 859960340 389475059 853681069 109694849 788600558 147524974 917149604 567805833 729187159 192589644 608044407 166378028 877511893 868000818 607885396 501437387 409515744 803432155 105268893 868564759 414757731 646306707 66626154 858557850 593801025 543628989 743153669 311183918 30212814 469465934 555832940 278907779 999236690 132657487 138934738 45793950 6694538 18503774 913527326 288366420 890166567 30859309 242795882 870641363 622441292 681647874 600835205 737022490 266617364 563777078 893344626 337462396 628035849 543383222 745668583 46299682 136309934 162448773 298618319 256740485 923458295 686606392 88360392 551502583 885104076 350499704 685981606 860327195 795651978 404476292 685627630 88456041 485714817 785553068 895816028 299028908 13102199 387720663 667923293 738814851 541579555 402776830 674588822 546257635 31131827 680165807 598647387 599180947 133784903 870797195 531073592 268124846 921088115 517337799 293985900 421440293 136814017 518643887 362045545 390032955 464525613 423924767 614809430 746590983 809848743 410375176 380105357 988814325 39116180 894943729 463582749 497585477 461323086 903523443 197128521 569197451 650025375 680563132 536612614 905361965 571965514 836201485 443857537 343725032 424343170 322743356 189608343 861004620 124318577 349398067 773995868 263016251 715325619 97088367 659245717 823123822 290764504 240143746 955401789 546009840 147592165 299138193 449176068 600579745 861651 467617238 551178443 940335540 278211343 220415007 429569833 637958705 858201337 412287053 90584041 572410740 832411749 950510038 773185674 187809452 739570205 601774916 125610942 288416605 979743068 18786484 82122219 725914078 888909396 818972248 623309229 506037724 488032425 841154293 803255378 610298069 23243765 794221158 146674780 631762590 873541186 401582615 266585603 769633246 651430547 253641610 46374832 649663632 223761243 454380246 481000067 639883909 668884227 52705059 327632591 15400928 488019561 5634863 278364824 760316824 153390940 289765836 650497052 387827705 933067553 80824415 977490503 699079971 650578161 760142691 845171005 187336586 55367800 245655780 744034004 392252020 214309464 860326661 393091863 704356990 744008868 353830010 389119684 285775896 453180773 748773646 254550991 292156420 673049 428712479 133443037 726929371 639630638 113329949 148251850 364962440 50989708 874477583 578309411 897723594 178917384 135109645 622922413 634635702 836137202 228330439 260895964 195768628 271810952 809346044 619329373 309304445 798241152 522845700 801712268 139863715 206563970 496571975 429530622 830908681 234093228 285906116 809427193 490718183 715994893 382551435 11767543 543945927 231041578 533829443 891193895 604427531 97963643 260275621 427396588 23616101 992891119 971679742 69826908 354159452 364860260 719766961 236251074 737686990 124335408 19954867 685715740 912172392 200221083 498273294 107351197 691599408 826466 160663134 964592940 687838460 927221814 530963031 39923684 615767032 389602107 87919933 277826706 664085284 148163977 709268842 270005306 215047892 420425647 254874315 124219283 228477486 919547691 222359907 273542022 214342063 248614131 662453704 751176626 339705767 331223535 748593569 458270955 81000632 854823292 206970414 413836215 660524635 949288938 333262528 22812368 444198235 391949055 413383484 295459749 311393367 808340083 801891484 588196568 517082692 586259570 341577070 684524737 382949097 668548125 460427347 98328553 51067234 590798857 611178625 4918672 100181662 712451262 805047362 161068073 222356961 708066105 610057075 743280088 259426115 984472426 782315014 192635131 762548270 42867895 294810240 349245598 991329763 898416247 195259515 298403589 359414 369173624 39484197 454258726 72894670 16807290 535786432 447725100 164256806 173961650 318647840 204795382 548291471 280592712 444611888 332606869 690207468 200431321 291469165 11359953 477505268 555927541 570533737 586615205 396197299 783799714 765630537 506094271 825919241 598237911 775935048 416952833 273770793 429825794 333231410 136614659 150865180 268029059 678479081 326700942 414175548 633962798 735399908 529963042 15399865 926295757 738607019 965110897 527680791 344936860 572855132 762951650 297562286 901241547 836721193 892896783 294987049 642779904 294118360 472717127 210540808 493503698 248053570 314589453 519664926 578353999 595184340 205592214 514779923 899364471 871117585 576334671 333209570 580208062 247591181 405415766 620232284 6651534 190221044 806021116 743729572 244404931 528214657 630421577 417130418 319291181 602260871 72273272 211010512 447092753 328245868 818930038 936017695 240870825 340005545 606126439 139450643 910895263 286128459 117936162 994481139 173863574 147249525 996739248 809815386 505051297 278336732 785406672 683053753 421118410 388781129 640387958 634395602 756291469 351210523 827729224 304489790 327574106 113918146 749719328 189888233 172731414 632936261 470316685 514058385 817857178 946346941 30168657 508894794 556508723 636996056 693781220 408500988 985517088 637819223 609805040 181647075 159614744 424758928 159358419 477610511 318938049 952346860 770320928 334271202 152996666 687835498 271502878 864816789 968396178 13684507 866864199 934896050 807858254 918384036 522972618 784727195 638682343 891276735 199563018 710205954 879084874 496286650 898943517 231851375 504846934 290142198 852033870 404885950 132073057 300068713 585506204 83994014 874066868 877356572 457667897 864504339 953625866 9749422 350527499 930364148 553124885 76580816 97624622 407314285 196683257 333076167 730143343 726378623 749942735 248910318 830316755 654601595 63981348 114222641 215021326 892643979 170678391 510326418 532657933 307654953 109881790 100261543 665175917 116481702 378556641 460751642 179293697 72618148 818396222 650472488 826281039 676832156 971389220 941816355 131282964 611165018 187347544 572974064 131073980 684694908 689142931 642464650 32274154 195837430 165051137 25433725 697071862 579079056 730732995 761123435 911994730 513201766 712358510 200939403 428190341 296496743 943058058 724938021 682907576 536798168 40241173 488752663 712382507 679382478 116264957 225393491 991716665 183017143 32597673 577617502 184821487 736403666 942199409 750426067 488326801 523641010 691897377 9969118 914064662 141950399 381637499 825029314 983153063 798754484 242810801 815003988 736794660 534161954 973153263 274520445 748810655 139948268 868864463 136008379 825934046 852666569 529112034 714671776 557585117 601852102 356293678 585966930 217728842 797192129 701936811 543976970 354606856 165155567 720166341 884984725 795944108 501225558 131597533 366871766 171954947 695117652 466890440 53771074 785098122 262644502 901491790 871626082 464116 908587810 68621996 989091156 476555688 402285518 528286227 222156619 105730113 119025350 903277607 201902603 221599756 682925962 549762688 568992621 220045197 555230189 180822316 954767585 314379514 318973591 574642987 416563175 817205438 553573252 649144562 574119573 863356920 684515972 909382377 658402324 945253625 553768889 436620781 471955235 132206538 510521371 795230670 120219795 714758308 918424055 617967058 584746953 13118069 66314092 699544368 864399679 165964642 637455085 994541462 539088130 524759871 999779778 632621988 232680245 381602329 450988166 945405295 765248141 594080941 485417386 802646783 410259668 466876654 317505009 405789905 94445415 208254594 67257586 587540565 294923192 91358534 150982554 418324593 995625420 610525638 707452583 959187964 97442493 971784646 963515181 55475268 217129273 411750076 450151701 305345417 514350593 177265234 52745113 551426431 26429035 443525865 230781386 248718288 790001889 189693969 955386122 432818328 353810272 89136402 525035410 869800167 494844922 621677415 59576045 88556867 656870228 672945982 527093883 510222883 958384425 808850937 599736815 896833141 801168069 351895215 418203090 927200280 249769354 694756011 461497854 944023651 297552750 514595820 9588259 392792221 466388859 271222180 247369797 21835394 253263438 997260986 991219004 27710148 385825433 218105928 664341810 204333448 599373730 3591709 575362089 598514405 784786369 350624059 107443315 763517801 70404326 213473882 657987384 552417939 229078288 646169700 761033971 344260442 377552087 923655415 405959669 140113572 751218659 546833126 910487265 221421520 257723762 8644280 712769326 263146797 859123414 371274023 996645801 224937088 691317237 632362403 76402416 38462850 732037064 237819085 688116727 633546336 789831388 539198204 249599623 311722553 856731092 322774715 819840954 665127332 64463332 796515145 533398145 531387175 5326168 807627031 910183454 393991617 979308043 893193294 572449450 378198369 151551984 281260359 555713936 483872620 140849037 269344016 266935312 614774075 677535867 352513006 293914557 314786458 808941031 981704661 662587647 552340043 444720404 302466290 774097810 533030017 710071767 177319458 60607749 945231205 629378330 729111416 106675517 727868821 671172441 859474107 674520815 155161248 554043176 869804005 981283881 600085387 570002346 8973733 759974089 451978575 385197851 28987358 483889412 622145880 65531208 873510 207102433 444424711 795365906 663688776 477527996 211367730 208723439 608441538 610609860 253935263 544300649 860132168 307476860 555932300 298969757 384451903 940983613 441568810 610730940 506586691 580145331 804207645 506829197 376486561 294507100 119728382 81530601 412188637 908419853 604469721 609983038 203803438 462185580 276836527 839216653 37564413 149197174 257145077 276585325 189733482 703098107 6331924 888611461 571134407 688697373 843590119 279950101 694924058 506859733 439190336 833540846 576115103 470615662 115680866 324638325 448170820 513180680 687766920 718049060 28928300 240745238 976026973 457819145 838160941 421408224 373598083 937934918 11341650 552499714 989295884 57505167 862834777 121921771 697146628 732944559 362161717 517336159 531527909 203098627 1300365 481239286 889094944 780149757 944299836 322088091 112206235 419579810 407915215 63300877 457311790 603704589 131280138 86525025 418723109 375365610 455742051 851249534 643968961 917200891 431189381 217827999 395073207 815349655 301097423 547410389 396085935 522199078 483011027 531911555 649767622 509490342 553907671 827944160 601390860 475114537 570526807 205159032 947467015 323726933 751817345 863528619 569807919 652236770 868258999 275730989 233238640 261373728 997262609 766966916 633582763 538921582 880073176 998485646 818912564 635380420 703994892 130839800 771928149 10601514 239725535 905494215 414269642 407360063 336543544 957249491 579418180 306456243 323430450 22033223 377001446 743461836 235214234 674580003 568985291 693408997 63384436 91274682 352299646 357810411 265506678 426098228 930803584 505515743 820262283 31528205 763380677 391977558 446306897 809194900 231712055 98857980 510195612 291586925 676629042 67076620 363521265 835237136 89714694 81912538 888551435 884827208 138676089 182657865 62227802 546409652 29194050 477226325 401422463 751312969 230431375 282285707 209567954 678689742 156991872 665775244 167609308 373510494 627746729 89658254 883072477 410824426 968928404 613447898 265784903 711842485 625675325 970379087 538029632 620706262 766626708 632060894 394583845 542961849 569999614 501090828 147344642 69842846 132525269 748949619 262301466 878615833 3071971 2621761 198547045 791473296 147802603 25175223 747719181 863417536 165143073 286054827 428422128 36481081 583570348 924124166 606956833 916492765 747269163 902268231 823535719 220743525 287272493 629462271 605456061 670468572 233855415 907016531 575827920 767406626 837372611 798058877 595698308 681879402 891832763 730081355 180150640 457937852 34448386 676350111 360128349 325751924 94606955 297365997 746495434 142381761 280687040 224269504 799520107 397708839 20320572 54096181 43398822 741739261 990772497 292706685 390809620 337683696 714178276 235677792 34622214 4805502 915326540 834259893 841432574 470282876 511848790 549261547 990540081 557116561 288192260 593383300 825914636 905288632 299425225 572514196 8636076 447917506 609432078 851923014 585640548 624387794 57073841 594848343 405986363 99184607 602920833 66357913 39531 510056245 798482883 97650290 637641700 238034676 510219440 530422362 344279238 49934736 243900404 374586977 476779243 169683535 293635633 504424614 425790555 584711630 933594490 222183905 645624277 98547837 847511512 350484442 120051533 506248478 144244681 315346927 169607784 555166026 750861500 848656274 335715585 394200044 827323798 886483145 422952360 799213507 934279472 990027437 597949982 48903652 390514390 427447787 342390747 420206647 31966409 834216774 967295112 213857269 130266302 423724051 184262277 942905904 843898974 205831355 266002788 843751499 312508868 794605372 348118636 792454782 163215362 651881385 348746007 306096723 32592284 428107429 855979412 163280684 322691850 553440748 546314054 978027194 738498875 891700427 794348354 649012615 239043597 52168355 818846933 203320174 973527254 760660330 129767932 141909533 525294302 725647913 781249003 560492442 468636642 623422335 190847367 137452219 794272915 605883932 967123435 908074924 756815125 227091783 508064999 274054253 919652225 891002201 901807484 950945106 806041699 89813056 193700961 145366913 414357820 830900733 666905729 412372343 935977729 680937254 368193915 299135876 66944666 936829285 73772065 35011146 900034916 800313334 287720697 98571586 924086192 732040237 139769023 241819447 635683137 211567086 625065697 196891336 392771538 995193395 351137794 85064426 293159822 610190218 93048439 22865252 549468566 431978644 984191693 549108050 296728703 223282311 966861889 221181859 870039761 740195757 714369350 993028507 840160649 15975907 34127363 574120273 656575639 952809243 586915538 44297266 383183713 369965530 899301059 273297788 809099070 387319227 439526935 496978116 35336700 857232362 936873669 82774641 900743259 616804265 767265016 222281790 952894608 319679694 188423566 473167292 482754755 998310467 395458715 243295949 705209233 478868613 926456804 516323883 896992394 700880934 547477861 667174879 134416564 15970892 415077835 834459082 204711686 855378223 321161467 807984159 178586350 78625438 968857225 400482791 813310668 201672827 340382786 601156476 733036149 672096570 490746019 428037390 41937840 918883430 898921311 679792417 38848188 159893277 951647708 154271501 433934537 512642703 275138998 32386941 79476858 59494018 94038843 80464624 591481961 585428945 688624622 449534523 408476067 515879144 741796101 618486534 119885864 87664714 642342891 288978506 219197292 798534412 436418750 533123801 549991641 588805975 416151250 78445014 207791691 473368809 218364204 232811321 880658066 562899861 475690247 591336524 517328884 316812222 776254547 808901680 4516520 440574176 337452081 513429593 349361499 616623624 471135096 821783310 462773679 662058070 690184499 506483178 874453688 406299010 621842721 173552734 409951613 86688341 825041460 84262956 2746237 324655915 925934866 819405293 83692839 823288440 493086871 300045709 60041824 17766208 520966737 834306250 241070337 880825756 396556547 968395192 523430231 974533436 124276003 16753983 908714146 617606624 351412571 79848859 59881878 828535262 191735051 339214556 459233500 697825952 794900165 762798948 878730642 898697506 950339792 924470379 203352519 433076856 381911975 653671038 804774144 888715846 737388151 646847996 982412982 47156550 617398180 504251800 331452630 966752710 503242564 807103194 511626303 193665063 703144354 496166558 988263751 174832479 329532861 518917011 144354359 965865848 73980870 316416700 181220298 876968463 443754406 357941235 927418290 415880918 78369141 17492577 334926611 511500306 535154180 576596744 586969862 658151709 294378836 123292985 424903448 259652837 160145693 131558174 71171528 975884907 293346120 394850353 294839052 50676038 240709237 101007299 728523981 357621277 83411062 166941046 561198438 109411632 80380114 189324227 327477801 705790160 427557187 245338742 376619994 921013219 215479864 271719212 218213682 887077985 299715412 365900252 672536925 260363225 54719981 310091595 150751868 97556973 215556494 903011222 736712740 81966801 977927285 453419692 462466014 521720784 40803350 127179986 360700325 143543239 825313174 298748701 630911083 199720360 638885968 580927995 413883540 723422457 521576532 813037483 777004664 269079122 857103587 579840704 682870501 402876899 224529652 462552226 371781020 168581099 35372979 658056204 928413648 988185922 670502652 608720783 381324970 585533904 474350052 862007822 448474055 165130003 481367857 287756608 193833912 913701022 260011485 471225906 51671680 695251604 794171287 788185538 979773978 669242417 253004097 793056037 410402545 579999297 957124467 253895265 926101094 432506791 204444407 641999572 965986638 188873688 749078859 994962859 566484593 435527517 199703842 421131884 851671308 922296917 267532003 335865197 292665680 614618352 386105128 798018138 35092705 54355445 988714817 370016435 336053079 133441853 655495599 921201739 287612608 953111093 470789801 857558474 935643676 684958816 557310106 679517484 233347552 781278163 959069344 764890688 871678580 239249848 861185807 830336811 63951029 52168907 970787820 929981154 535757939 256407008 388529523 361036211 627488500 256058971 423848082 230471613 681911664 541855414 930114923 206269811 302115730 450394367 836924374 356904476 548755965 411095895 945931740 792284758 725382853 696098420 976703549 331862671 303806962 539792416 347351275 113263499 854026753 588887991 394406285 731507425 322337378 2276525 310002173 354789758 824595451 818803462 833874122 10358816 761597347 115132892 72745399 319573979 328113832 676630493 949732410 223216280 921428810 719099339 515993086 946807697 505110333 505808122 82312545 290498519 941585451 518958036 872424439 547903180 323992112 480668248 644448005 871591081 462623324 855835287 377250823 926120185 678397237 383620407 504076586 422747420 196027186 587938800 701870034 683768005 483454273 995335697 535079702 240796797 977985346 321863419 100691519 243954718 551323273 519527589 500989773 550066520 199757408 560534039 962216818 924597807 625983618 227974127 519311764 256915323 886548898 553155807 432328399 521759078 475134434 556965932 736269553 451879922 415746908 229739569 771364093 952757617 211303069 739551450 738740137 106974987 6344484 331285034 468418015 126562619 170562024 792923829 65332543 927025234 801970127 398981158 440045724 690448627 107871800 25774011 30331515 170458773 94553458 413550788 699565463 10828293 570145090 679127335 789183840 616854497 263658849 738442207 856652918 152343325 442271228 424141176 965926707 406026114 825762355 255017109 441163295 699128362 410591898 956735083 826969209 293473798 947077050 903246147 803136181 909336664 178160785 960908027 190846200 433569593 946137870 712500102 296719262 676559892 815652502 767092583 110807989 176561705 521815682 985796154 43473791 115830539 955992223 219915564 185114868 668951330 324856236 780214142 456747070 360543786 196989407 976892678 614746683 608378802 635727201 544518829 898509054 780245406 76878029 514698994 888116301 69102246 735855541 786723941 362283557 199597269 509197597 567380013 661726514 207472650 420757502 361767555 408965976 134772858 152764868 47818549 676576301 173553964 460908241 609998372 47581564 138850428 31043320 369010118 824620483 336891032 236188674 245434788 494315189 566536198 806751276 740738269 236102074 405633052 886351527 452298914 991766122 899493255 314338839 910479544 363481366 473825477 711051029 735074297 374724927 423201962 561861293 512826067 551335452 767997663 427606753 988389319 752095001 18462814 401726244 286610923 153811539 206187000 851608287 598054249 389889820 631902927 342783471 817204734 773092477 465211612 39416613 619831675 384580527 587850090 566429381 787783240 346594977 399972249 521820935 291978716 543730806 880456412 265481882 931854662 395149316 236716411 678450972 231258535 300034133 174888210 169046435 702479029 871557929 776035088 976832311 852263738 338406259 581767993 808688981 469909907 124513752 706331685 840023662 462796850 795386675 675137470 823921765 849744413 3929364 541044166 557931285 71694188 808143420 994096719 498947785 688269774 618138914 493367873 245741762 835168517 483217521 772886487 90498485 486342501 586410376 722813218 44029002 990037081 651348728 810224773 137204126 138652383 779948810 883506487 201225666 206554631 656881719 628830148 440492601 705472887 654799789 890935948 498743422 170054122 620397009 502699075 729980540 390842796 991202487 872315503 432867604 450025248 514682028 610636270 829613722 640450874 492883117 335647085 914703192 28386310 546294509 87650289 385722378 226418975 497129811 259050834 252998241 53554744 974344697 564719291 640004480 403705751 15930798 291212588 369141378 195971733 807534197 209898488 936813810 97210911 423788036 161294663 349315921 96990008 931068486 582257301 847287187 587873141 259872730 596457777 136376738 762504063 300651153 665949887 236317658 960227733 487516659 942630839 843359115 536062471 5223355 780365283 758399355 493787580 397645911 215436517 939796065 24373421 536789353 155157679 514516331 612033127 293323848 992929801 707513017 156194957 440780416 677815054 995124703 923581780 750639182 849943983 48638567 484805126 635589924 486849582 382175821 690037120 30903851 438683557 96727169 335921331 942620860 916761725 80045417 60424486 92390 308235511 352487772 972754290 13318124 275054503 712503592 242526149 3338948 222075891 902580876 304750688 602198680 581410456 702356159 42019865 11259721 599206438 985598183 658159834 89435111 542325119 618171555 870712352 501599034 31155804 54240898 519168380 345104445 271248840 693665930 855460629 801794205 838511266 279630002 213955109 882959678 683123744 65405287 555506552 54077622 152529479 149333515 224557552 516071888 579299956 943983985 378084611 406700555 870218710 850746979 29937979 870408729 597513713 465914908 59942069 912233568 969679132 472857806 799000995 620740988 774170372 788459550 462793418 403634875 129434407 345621923 472743429 589809823 325119322 105962346 807214272 483128160 35493444 516844661 85058685 633892200 313753568 382507319 900014419 984072149 22514687 585759258 269090921 257133306 181747908 134167033 364497024 245452510 454787366 421371046 926160487 630749627 512401265 165353829 539222916 616417920 356328389 656654703 388882514 111608144 440231573 425611889 201417437 608818689 594267946 511660810 411338568 790442142 718288414 30559056 560986695 242937318 529749985 585066316 231444901 419744202 240671032 50495865 815073472 546989554 385406393 952979273 236322056 439884857 315521103 543669664 540681859 324431661 161671612 890945367 203168332 339905680 235931410 458180538 894107407 883923930 268418105 145507594 731682191 787112116 873068141 753874684 735652641 919176062 404424893 783211833 86682670 800810442 697623693 760820700 841171637 562868446 932499989 921842679 686765254 649222710 589372127 122082830 26349832 48908801 498170445 338643610 156649780 889879967 969867280 714313351 6344343 174768681 293554 579374006 250741396 289767145 706927630 418422652 322540832 510034397 202616786 36287265 837933892 126860345 771009028 710846050 691128223 843022050 741814138 401355760 347411682 196251891 87239776 814492143 206520401 955309116 558310582 88469112 845547081 829696958 867843280 630557207 288795828 955090992 871185876 967047757 422666134 761258621 238736959 302375951 76038020 927828036 890400865 493710405 659371048 338566743 690560220 310412364 262833343 42856252 308071721 690229365 387787418 598788015 3114002 586809987 201526176 893121822 422497849 476177457 229988555 555716139 587161744 544973738 474738855 919895854 240055007 717753871 712255446 660283569 547279938 949781493 297221006 265731570 902809512 849499620 820727321 137980260 129184853 131020505 372513620 81095982 17429600 665373380 164020528 334455210 538899766 677767435 118669365 477576167 139858965 666199814 280883706 191621160 379860626 874328705 630049198 139535459 898824980 930243645 715846802 683039427 403988822 166441070 213151869 325839911 665577705 553765182 103839319 408614048 14748591 784288073 981338782 442855415 746731617 883494943 349521380 314177572 726811915 600067270 86088526 738960344 999455627 956390966 512317207 994813684 790152213 475669466 820752651 222827280 260818353 845846549 130956044 887655413 842414268 229419195 205811089 840212003 383235939 404139924 19119650 16974156 497627179 199307996 328637405 587262167 185869932 278656454 707430900 882340446 836298449 842050804 745779757 95259184 261891033 978223361 207812448 394299344 503111257 68773623 92731901 826972788 12595704 922201817 601781379 575489927 656279986 706954779 731619338 663294759 721142870 672917540 511041722 533636775 530787592 771971283 674010194 659086606 917012415 34296567 556938402 784700311 792395208 734170838 952713233 750807599 736035393 272401575 899385880 802009083 116541599 827303704 244719044 460318159 109851433 241121224 189905976 715667127 903562618 758966222 346400553 148735090 124766979 17551408 283685216 434299890 257949574 866496621 270258492 107867613 782153116 215398132 34742061 969094927 721848112 418512298 915647546 219079958 120148994 114254953 52696700 746201268 350908966 376127355 203004833 443008609 241852546 968285219 979061610 901689543 654324563 181134100 713775661 972408644 656552 238397688 448362323 400250987 860014310 300390634 945210331 534221955 337141058 330478844 636681941 453318150 907175498 87673010 158074856 931957796 233932381 507836293 411421134 812944190 520215086 562960226 864340178 203280235 30417221 649020200 81538904 940780790 171206782 400782126 311057494 447473373 550340743 404347322 791923667 555570004 676878438 390722954 666089839 643720256 49018354 89401423 194777307 705220541 976951893 338123566 174541916 86106265 973684880 533465405 792362316 324263638 991708663 95328780 315764377 13943340 950495409 725234201 711762245 589958788 515050041 996415322 396974308 913231998 76941792 309576632 835956257 581702636 863449416 198346126 508814137 647866965 881097450 989465134 643030654 426231155 630293137 509123164 744421077 633687477 75543517 870003921 29415992 914749118 137621186 622243513 277098038 238966244 128738822 725752885 784140910 481015986 261982662 312155354 202945303 945631590 599423985 665456689 829704059 550623091 872704203 400326709 869536888 168268288 488792940 318475224 770294014 191161448 457744959 161721726 995284115 182963897 565059972 63452031 509864402 639348789 339623374 915907242 955895015 384507859 988696197 991744189 885721621 166622910 999081572 679298798 5358128 290871509 528601084 841727077 713749795 33382186 921291312 779424447 358629996 548740227 420859575 371439245 650435483 741827548 544644766 151328211 540703959 854331619 180283075 559323785 591672152 884725883 79759963 194128669 55769070 271073594 615217004 163527920 723677561 119736298 595243348 114218196 917323118 535676427 626060608 837865876 503418969 473496656 457526454 189914220 190590037 327703838 544801292 148125069 444913558 906758416 327274222 368541339 878378719 780515189 502267612 735022382 376001548 278489808 66029481 527088980 890161802 363564887 453873661 600488973 119668186 850498934 237959124 235296206 240855058 140939337 771168509 654868223 682109019 516036645 266637212 817487997 925264244 380968207 647630505 234119705 218908205 29498179 587591791 430272278 269117421 393135535 761996045 348306095 430019885 744270453 257928952 128123023 520830459 899133293 91455863 403594583 640210040 275042976 299258150 880992539 68214106 417505998 764225140 721870821 970657899 190601705 8667685 501802545 31600904 724357016 307493840 265178479 203668642 809367477 987304545 960801925 458551105 582748367 775955097 550081610 977011708 660727465 356909961 992188428 52991362 646877369 423316763 304118795 952281236 847452842 461354633 716747772 294818440 588437722 873817828 747904902 664320968 575158493 919682958 934622920 28396625 736325624 898471616 836903633 721717301 953936806 68625925 698994215 322022425 944741911 874180797 511232833 936747959 332715180 786734235 121256717 251656797 866371708 731228200 141414251 343732077 268724947 413266238 73589679 45787 996498349 180203405 207266595 412683698 879868991 518998809 997433218 989300879 561066351 297397433 13395327 635092004 9243735 208957082 367781692 781228983 5652678 595094715 376668371 929703840 204518846 883824495 562303697 3709902 796497399 604580318 957732022 128597571 98704987 807135875 788245878 210367892 480966280 671925167 812836859 672355690 599940433 110935045 850507168 537720067 529689405 823267580 33847479 105743793 78543623 590012256 496955653 238498650 402785820 718102994 967465537 341528822 426535712 83715395 53310104 548277013 149678697 332786045 974930732 37346902 540362882 423661466 153835664 419351025 758965418 604258443 485945166 815876654 925165907 845758354 965007457 391604972 889927843 35057864 665430459 708141595 167146230 829800344 33835712 83986498 591392602 524266306 412837065 768962298 793125905 220477273 640642467 843286384 945388819 567664709 379266061 431782631 455770249 484256194 284527165 317651764 858629459 161661279 849271388 539221312 67505539 902367488 196993285 219155850 691610848 75173213 574249418 299630242 510682980 949356673 104301487 25396143 864003518 323317323 250290093 762222826 769066961 647777008 895406384 767220769 963716403 354601847 13676698 757048629 831307183 195798587 444662206 671249564 584785860 716184941 211772517 172281824 860153123 84943760 249167053 378542109 911371060 93350395 898766372 348168327 314945938 105646939 783749393 948889826 747575434 664622638 505315884 148294152 668145057 954392392 511245441 34940519 430634507 891336274 882669586 579672704 873473844 893467718 350148690 856510313 667696955 453773301 922385578 209889612 761530226 919157889 926257399 147521510 433634016 998666723 130859018 338393865 534890687 119613798 624915495 574522138 102658814 259202602 981962119 917032339 998677695 864733602 989505750 299401090 359481562 933034006 808454581 169735689 368655961 245336866 757288761 555537116 127821562 433222197 84087914 67627206 402519472 669430035 829974725 499311140 559164706 304052308 268633275 478682472 723548203 151841250 371592752 62853015 701033048 120784255 168678652 688169676 763228269 598519101 208415085 436871347 942769377 540531204 266948291 275579150 849732701 594659855 398407603 547924532 265156160 463144303 417700581 128356749 707063070 270330503 240480118 171919383 77054268 849678990 323567991 181640932 556730646 737070096 86932587 203963802 639422938 297407853 907322829 30081777 238295018 798410585 397189512 270218041 583633758 367297370 729359485 708987089 569877632 995139661 726449921 598647985 503970894 970515170 486936412 112067297 552987899 914192411 611889739 873664255 578334318 719775185 402531198 212863166 432165057 559897391 278733851 285011553 702000835 177285941 369801529 480574788 703672951 353093942 570532454 438033492 25813907 551396186 676555810 390760081 669785602 572796701 15414881 119656851 546956898 426902478 500444941 528568834 163470471 861389073 196434050 803240989 796704758 783133022 234506769 204562484 222889067 192818303 325724285 504303406 160067667 926948886 972335744 594786052 398999379 148944917 628383559 602413380 232347327 987385667 66291442 356506511 411176995 986365886 94408470 90902555 885212094 958196084 538366778 311561777 133625602 149069992 417332573 673864880 973981462 599379060 698827374 190292104 437699412 578464577 164164307 38302016 803436491 500630352 666651875 971996530 755684797 850933556 699420524 444613961 509524002 374047318 588314157 830836489 179218468 184167280 718944861 278727560 72624545 760293139 963895075 726585517 584862637 130571809 152796699 414714360 309896973 389128787 521226199 983897338 584064188 842961588 853327452 50772440 460209258 657803299 839183265 548790732 829801208 592531414 861487635 921650596 840835837 70195666 626011412 499500609 726571332 905173363 619548023 586540826 469954380 732929003 639285766 369964214 843167174 899731131 467136509 885043509 1835803 245768763 166946188 853435080 163765220 421441048 7807064 830583861 274306928 969552848 732422650 979582292 219463745 430903608 719193726 242373012 705419407 83661559 196968166 22269047 109534915 139406088 708246949 82793489 709630461 417513276 603766565 206916493 138202768 110199733 246083137 714824104 666015360 654875501 376504523 235763508 500102667 27166381 57485319 534508951 274066973 185306518 624027950 725803849 296142554 443868827 800753645 383767129 396942360 571263237 613620451 575936745 827540962 49613678 416119334 166647213 325353206 514356294 142816703 440340081 65572168 799278674 563019305 38440080 721009277 746667815 189850326 519534461 709436529 197654963 779874986 296405822 74901937 253382837 24003710 741944043 994008578 273076032 94915998 542485812 578711256 372535100 879067724 228003545 530607072 433173989 486708795 511596847 6276982 430021706 57516820 184045218 412448559 128286671 863566068 7223597 55074897 620493484 936496364 850780387 483202134 578352747 780627840 194188394 523212141 613293677 787529513 743100283 219608313 517438054 972349139 785830756 605570576 190630621 84391519 922883462 951848445 506078637 127674146 550206934 822572734 171479687 52896868 431574368 668657542 465210222 422810595 56731839 663973692 326415161 539581005 551030439 998580475 43628052 429916617 323744348 844373648 256963071 32237167 392078392 896393983 330535246 232669387 23308841 794587391 30534951 12069470 571161648 31021945 212080647 157919773 248409315 832436236 596985917 777708784 244055019 892978572 485429358 213218356 459065991 277628543 371072527 470735930 916872200 522150815 490546670 138973382 737285715 845840474 720037034 872606096 202069090 105657173 354275638 561534662 17971395 842466533 215161690 454347144 161445911 742483860 30779442 946237035 195237268 35277986 949877421 813253111 789815684 948841602 949743631 268470057 566047172 914478424 663116911 84893170 648611910 993961346 594989370 85857205 720349583 305872908 473333678 130257869 832820537 9935674 151492448 217315333 582141554 590653698 697923255 942294302 839079548 516713871 836032878 467437388 541929259 482187711 896443670 96990905 671437674 325439398 870487953 271469569 181047222 172498185 8529304 180150453 305160865 261786596 330041655 181962200 706935121 131450597 164818508 549213285 584755710 4491246 603896587 358026694 159993463 423168663 464792188 908408414 173761182 436161705 820646651 221411841 986221799 299033252 242604216 352180855 655340765 969383994 548374581 126669821 342391198 837780178 48523467 501903299 786922586 970709510 787501349 927946350 780675287 100714021 889931202 72020632 509250544 844686514 175349111 618039627 401712657 836776162 191546859 610603146 707068861 839652898 293915162 278719945 812375561 358239888 242646227 381330032 564668702 394761085 963667258 198886491 649999034 116808177 147740998 287647324 946447535 106521895 596233284 130461368 994014051 98318092 844245330 548543910 546912847 858333892 474619877 694716372 507460224 927691046 169489988 770267361 875404569 413681467 266154506 654903780 600082895 510378178 321927336 751015396 28456811 525330607 194468832 45911133 213594188 709331368 456909387 781654465 965879010 16354951 229057492 122957813 191458868 211586779 349423163 557723856 724338779 519289190 614176148 606053023 501427973 193451680 100387013 20798116 153478131 7429938 901568011 456112018 603763067 496683645 542887797 684925971 244356358 234228497 361678696 407546690 959763347 884869942 892921625 465226033 693109811 185288550 469924630 681866085 767443083 339780816 849663422 626466645 837137237 522107863 861813188 61294830 659268319 273922193 235192496 645694738 826002314 602938697 657449821 738794516 792588364 490674942 695642236 943616573 422290735 277164514 387436816 427232843 70064592 432959451 379857137 270376429 213273056 779132677 56441673 373043784 769482663 582207021 772849945 296664181 761165436 797336408 359800245 704402944 749010766 137005114 533864772 2990954 141720862 456725696 806959425 319688873 689552770 410194823 967961853 433126819 933144356 45131874 599924762 711877814 713215553 862286039 154773777 330111795 425639211 659651747 122946477 743342046 336970439 166554162 712893838 903272304 25593104 336390439 192601768 674195733 688069010 456892634 805598657 471837935 390615023 593613013 284864246 240512657 635669086 174605143 354934326 594835332 827734055 284597201 942545349 282617285 527503400 181605739 353404091 107760709 165258579 467572608 166620547 845415784 687728430 121425437 844665436 936917383 874359889 405409926 164769243 312107886 717880044 507824562 457068391 963414750 427326782 698568394 658037180 998559500 699833887 322339246 949625705 957726496 838767479 934563183 888754002 985965751 983577796 614386390 916426030 871867490 149253528 998166236 176014346 806216741 113597977 735863088 107842756 396846072 559335296 106802356 523987088 984160330 242286746 847851008 933652855 711743097 242783818 560823774 832000211 265688410 158157829 861044172 918574037 349881784 691325524 216153725 734704127 54091981 617082710 564734040 984745898 426001610 638687547 923898360 457961090 85456213 576508618 661528234 210271748 848907782 681680348 946811122 519312391 962563305 512277470 393965830 157648176 719207679 428876883 600840529 907830140 304814268 458057552 116835570 56673466 175361162 154528767 295832634 725580046 399365957 821096732 531486002 905804144 542980798 399920507 65457170 614852651 199866424 377468544 421933515 642489694 822806254 914654885 47864447 48905598 382366347 668338680 373723139 813724626 347919792 919409818 154140772 356626166 793451121 678004033 184918623 132063065 974001368 606316982 353281511 157829055 167102817 708482392 208817314 328753087 919738749 116699544 833612397 677064773 851502095 480260731 63887316 836853778 705275889 650490651 880949915 562945591 808512112 440257574 46657592 532842142 895398860 354741853 363148885 417529473 444172730 31841047 76822867 647106289 696172002 121266875 676391106 665781584 844215392 94739785 696807402 866087383 937260615 336451282 746389574 936515089 316364313 478413307 783330820 180558174 242774608 532785279 22708870 687259505 122577369 510668202 576227 902321874 821059732 627805406 941884518 521968989 914634197 818433042 847436046 827441346 25465062 914248270 813492237 463082243 541091715 850255408 570414154 369309944 84261980 722085482 634707679 911269582 608853398 309379137 596364187 855694468 624186186 849078288 933000064 115693677 420058117 69010883 477976390 40245168 515939143 489488732 421517271 791716043 2904068 590346098 898007249 423630860 928836390 48921517 362835719 904695319 726333448 478228299 801098496 898467427 603532540 432453534 600363894 796148668 753788359 552624780 963577305 372294338 408641568 87345934 406482634 548292713 801594420 950020017 767853728 740205176 40170789 923203352 360389094 538445322 991652230 109521015 730772955 360055823 195315681 926582810 135367408 769006028 882547505 576879068 320216910 775770455 54814056 516363697 566346574 488204828 883076074 261920796 637932542 38107483 713662480 983901881 26592675 409826471 289837479 877653173 645711921 950189672 852041582 255848272 330752981 836217434 153512347 424957026 188695404 521502220 484197975 643342036 44243209 43997026 802399293 931995426 1517171 87824148 330539231 731724768 284528036 994533165 690612545 149838898 363523403 801674636 747093084 565272658 265806667 256780390 476956573 973861389 677386042 478647490 410786659 93692230 217667299 921004795 396262276 769639026 455347908 246286658 920993224 235834139 432410257 694730266 148888173 100264542 433019823 399979226 250342050 373727596 762460602 249260079 534977292 789437452 38006527 292458135 185656899 155428120 154751234 441655526 396317014 102553339 922387194 291995845 360900163 56411194 425386576 448624942 662745216 927163368 298553124 64022258 113985397 182114863 41956040 263629107 5697791 855531726 280959554 349559786 930509807 65368982 694072526 262537826 284818057 548980460 41965146 803113915 157624070 718649419 837721097 424442728 762934290 773367999 987947697 411100081 769166670 628617578 707444573 764105266 135239631 3022850 220630475 438522458 580856989 572944209 81986286 374625261 593239861 726943668 641057133 923035523 678598664 600696221 127204387 90288902 925001466 984036370 855708317 75324984 260123619 160220459 551819167 122373419 457681169 359996567 673619871 889712839 850085828 969212952 457398088 350029639 991218865 83187202 892447737 254901436 990306432 277044672 477878340 357541768 98908750 446713423 161720431 371330277 468326956 349366465 104919286 894328668 198027678 675793596 348851463 87141198 727705116 80867577 718182148 381681007 282361236 74751429 583623429 704928581 956757222 38302595 938431315 700013485 883106407 174713127 998157038 667919191 808324703 858087612 489310728 236733253 937870731 358102496 327532680 450842960 968870811 699482691 857583753 192901283 750407605 539693612 667982040 743296574 649102064 97032947 479422841 620812660 592152794 961829768 603006498 635587693 496718323 255298795 660577982 432300197 47748656 767921330 154627051 634271083 229782392 724888454 33944444 901101667 98825258 720974245 620111097 54332933 200245654 469065570 398988826 713819675 148878975 93393825 429836624 232901703 496150944 589289052 267198524 828860539 937090595 306048800 413589558 842700670 963499563 981673872 113781959 583845742 731943244 138251233 121055279 360524345 340213005 417788253 101482464 572710946 713937261 667534048 252330752 356424770 677080923 397710174 438526699 581736709 426304829 24216667 744533936 494702761 470715754 438702705 474333327 668547010 440212656 397419470 655577217 424265145 486698703 314630835 420504752 238534472 427554043 359173622 32949498 735372543 267052126 599448961 491316338 167216067 774880915 391278288 129732063 245042506 638873133 102803319 842631740 995315872 13536558 484225946 59557686 509383844 792866704 495345268 862099377 498756747 52190144 428893904 949971012 648889437 768019741 653322131 754236856 426261363 770369662 572412976 207699852 933340415 241385641 411143986 112106612 171036804 409310941 822830262 634452694 76430938 669216073 236430062 421314891 360275500 259086226 70753951 411679524 690398073 882998609 748822947 357981411 457939990 115368595 340773225 182810813 751349930 602727511 703134576 126785311 655631664 71692051 656184783 277637926 841013113 289415472 978172848 474170149 712844711 394442633 499821008 836413219 236751027 710920688 506981121 450475866 806272233 768042410 572213417 816574650 736697447 91707373 367139649 897124195 436936609 279128681 104419542 943678255 411473888 865394620 433278858 992679461 869395390 466973180 711438356 426143495 256700843 398761778 726368828 884506565 331663980 239478233 826634592 587279368 22743446 520439139 620926195 277949352 378691095 565016756 163757816 176069430 496894126 304024229 287836811 705477747 532661870 202239106 556119640 380290775 898891071 114821773 49442082 419410443 300734045 701700729 309484606 440869487 391096023 20402671 538319381 599029141 726277649 465090828 130183334 421617348 941495362 702566625 643690497 390562678 637488375 63664626 968086221 627086810 922912654 375831224 280957122 386504019 694330812 855069215 25472304 621942006 523296776 47089672 910707063 18436624 443758157 60382664 377760141 768473246 826197564 40044200 282881659 486402516 234386392 594853475 143824096 546302103 998156792 444769706 862481260 500156418 838437576 64825507 761204070 789050341 220699720 8961894 640219431 714422593 289229515 510883967 820057757 248131277 927440250 103491951 585051593 245584244 56524495 868009771 713802561 509982933 492310810 384614043 168460463 402938306 887526144 449786140 73677648 316544193 865546230 642885375 991395957 446723214 471101130 455177224 232235525 563565207 56048155 396105711 431876857 985139583 362974940 382806754 142767071 687903131 423795925 749743105 88967513 590868856 249644322 647730145 463961755 853961811 842105010 103591690 556946927 958861471 179168969 525749369 837285684 269599875 649716094 993681439 44792923 393501273 125527102 57139551 195653097 16058673 821911111 486392212 735156089 169850700 639452462 540686473 612622903 818637985 802171226 658782975 432859493 620079963 764685958 393621803 523783386 787451480 526620739 305733428 730961789 364142508 125665907 171386809 670156751 291654940 401840079 267286090 382112351 394475684 91092067 770732522 635069523 225169137 54840333 815302548 461468133 806196712 337871617 33440947 761499364 384973597 655833671 599501224 922422575 598768733 103453243 648533063 257460542 283876901 63745805 335918682 439052953 90209832 583612223 351483421 494584414 606345676 458650154 469657280 831025087 211038893 906523257 373772009 71235714 469898009 95177387 380657455 614429567 81957523 286295445 410034336 774594854 587051601 29718750 159768379 842352630 514250686 615974786 169732215 751486727 669314296 331340880 591638971 947361921 919752019 120376940 900223203 280933923 345682900 317074893 293375170 247760317 18690998 899995584 994846618 450064310 174514921 850292579 546956709 63884166 535794318 78852651 6626704 203172413 95398780 311503454 500480251 153613563 979497662 559873434 233931514 579296630 120426515 119110988 902926999 514912375 44721773 898189114 243877197 670757468 455107186 227467258 726328206 564939160 33286910 719571832 642646847 35172143 410258847 530091380 806887991 722458427 566072088 425488386 679052995 963848553 593984479 634554888 918301733 576669052 9881246 232657347 552715024 466490825 909607605 161957698 712215598 425694650 380360374 153296617 899320474 344106060 633808104 446675952 927634022 696577680 963439558 526499042 308659479 868381741 569376893 348494879 715173412 997502428 176790897 47347802 168919418 851882475 224749240 874445083 354451963 859102395 612515485 242591037 666434554 874101058 750162463 147105137 257209280 162961802 912979823 329830586 831843851 97899312 524202614 611621103 556421258 527174630 131185484 582000957 601938018 474244081 222663874 974523042 279795884 678703275 586443481 182295155 150631668 791130370 945655113 181173463 493155772 134233591 958002683 519863113 925027575 858747169 574146447 732389146 5040270 126764840 404470743 694531564 528542430 851992650 18017882 972783672 431729976 405142745 395324626 45572041 387504736 27079098 304488878 150309439 572258575 280953063 993528465 896387982 163325041 426281454 125576401 345964156 264403624 221877873 759161849 776983334 477872967 922249892 794079303 533801339 272318935 699175890 349601071 651102143 430555221 798343385 340328406 586405642 816991666 322309801 706252183 880838087 500067922 266112712 238188674 905075765 62459022 904848849 315569112 997955305 497605426 62781936 242506384 339513674 563970047 504594792 393066454 171643412 723420202 139641613 745147270 347748310 772881627 870826186 131259573 79547764 337572271 12075549 995281449 754962085 620156215 344085142 703586012 855426677 761744247 320235612 947250301 859484613 884273256 110749351 84787694 804326342 257640566 180124231 507067847 942123138 694415106 141968411 990830802 325416275 809145569 886149531 851400845 524560234 137806043 315786064 492373931 709275209 714432045 785653078 411448979 597794377 782725895 980880352 288186847 950284053 478249231 875931060 140991711 219074605 65875933 444524715 112696340 921228645 62893949 771292211 232613813 552812387 715707632 51410381 447562285 957997092 967589546 403891599 894112922 295304055 293834005 708959906 560993104 805234048 76046605 704236997 26752084 387028279 409973347 285650888 163433442 665056999 669627483 740205074 310681320 473615535 344588845 706615580 289367944 664841476 564583303 405314804 953156506 979739437 92322057 833498043 628752167 814905286 989199560 932899879 427754735 370350398 827618507 195968514 512618724 150531672 698039185 870785705 337853101 619269806 639949962 99674509 340965412 757641001 931319449 783455925 924221400 201017482 642460313 817051963 878631820 45164005 153439700 867703754 662419638 718125857 137252493 802485543 805356289 516858745 769868920 125060773 137225931 515964925 404816701 784971951 969201576 226993170 307180792 261316418 982067421 449433070 964117180 759609456 174870502 894237469 696524043 38999262 73073392 170726143 97134176 79374406 618337119 489061191 154972581 392332278 772367434 382444157 45074109 866452816 628483322 972856445 588847355 643949640 900117359 983550199 974049705 691796969 697624283 348138477 682954883 909335248 585179172 588592183 838713 319172015 874958950 984861698 950534896 584179148 707611503 88886093 945988290 247229311 688948802 453349482 563455033 987323575 468861333 303411331 850576600 842239862 355986514 774298131 329680274 153642576 13779993 840977769 170932561 561547504 284083133 654735145 281716592 711834260 323327427 648937162 736177730 630108812 417433830 361576216 204160905 60502718 402158741 580612787 101748991 936526885 225382771 787485327 317022928 532249422 502370263 249118323 452168734 482326233 662345802 614092154 734905724 578394622 316333579 951094420 801938292 294593797 65779598 963352326 763829505 47887821 357743864 319404774 897867797 779894854 207289509 705439648 667835925 330580215 737071011 5952116 354191448 172898168 199123508 66746613 525191339 102512377 959717968 578819467 610294735 408319674 134000673 278241266 901491706 392444049 585185924 18631097 289098066 62087527 602219407 960477380 162570357 330352571 434296581 766986699 339827956 457128989 58890980 354901208 4499923 637014964 523546584 776902605 42776587 313953465 55701445 315278556 955455241 37924602 491972161 163513101 75392812 212263512 109977366 292134075 979624522 493726025 857492677 284285975 703129644 607406422 605397758 857024932 626398989 425012638 264000810 417358009 452284959 49075538 859878625 966402050 275018758 599499831 4334708 932634624 734694234 440971047 282261348 264847236 245742890 342405264 427854568 879000120 426911604 712206067 747574380 957319958 839596462 888679270 758767629 565608174 457915712 862148115 766936861 558352613 578206215 760581815 43615909 905449713 496580308 162828068 554760158 943893086 719685099 759671743 80051383 458018892 27661189 82591746 804299347 490963502 935761998 686281979 92627336 716877900 151560679 902258635 656894304 291261506 239405413 571984937 858606491 286718335 264685520 536516829 143525676 291656647 356661413 113612357 389939384 567135154 718818901 512236755 994709786 678826794 363481796 37981580 114885602 117661681 777228746 574875274 644228561 232951321 588455861 961756540 33588574 583110281 706497990 347363873 907783476 745041279 92121263 500315345 468108466 443877129 80790299 741342452 307644521 367428490 971420198 99942792 635345570 153581116 425860065 628598175 136293334 580153768 649346000 161944286 571474227 969365551 521147755 555417600 791446302 215522437 582734496 309307217 526359467 363832368 672895567 459953460 803562791 427537421 258684109 892682398 997106319 505044684 48821858 602568088 584768022 231978863 934885323 227460544 747903907 268707279 148674232 189280456 196778832 674671895 72052303 910000886 377923052 579610183 59501991 569553827 567438714 82880178 195147854 345048508 400858544 893245568 359353540 528952900 933156473 859281709 485039358 638352592 630464628 736693768 490577124 534074889 543358834 222869173 635081426 133252654 401859323 983502252 373658651 826322831 770902218 695768759 976283009 854317843 697361741 689768824 210191807 823291571 160210470 820772832 70536192 510720509 664193196 999840441 530337380 191371410 459442283 10740766 4522626 722837672 186372511 571293182 766342625 722008456 231451581 72171164 989940349 762010641 41468395 518742289 374875465 626511155 623426947 694314953 16667303 483525749 340154004 283352322 169415409 919674992 214447713 965539152 5723380 585471826 969908192 549606940 729687664 61785436 207531579 845559840 925730457 411638628 171962195 440589804 938627737 186989396 287326264 347349093 899122699 772506281 573046706 703539008 746803586 399750901 565169340 632988043 474989824 211866205 937492739 562255909 391907455 151944731 461463915 490454081 110136940 742387965 756383882 796881383 558321702 838164964 947094315 710163571 80164484 169767494 895898829 128028948 996325452 64469677 596701730 132882254 588272829 106479926 123293584 883116409 670743046 318341651 64182707 196617023 274900428 376288265 889317849 422562338 65899432 905151731 273211524 755958260 943214503 874379837 726628844 357647708 183637704 416737641 320351867 831810648 588465026 565587086 280865103 526721206 533508667 370469588 321449659 292784281 136155601 119730937 950991558 28164346 342125589 106403279 619213738 926732837 915283532 80789179 309221462 436813880 893323181 288586296 807734509 85973415 625315813 576284242 356073285 720671675 272541077 863135020 630870889 707575566 269370067 286736250 574504472 542014480 539424677 843248903 83457859 876840325 338049673 905746737 575613586 337104133 478546672 48545640 838810592 491686267 64358334 772901299 244738491 344878503 411128268 398192938 359209957 831723676 276121703 24535677 947233238 444973122 559594446 191619179 55092023 147148757 626558391 212407372 637361256 193248868 960687050 344167560 593822971 641942355 824325157 342440222 413637174 570500313 160154070 574297118 470991253 656392323 402050916 209156143 153440583 991032751 630161223 33352458 822468780 454519826 145128043 490455548 737982685 596532275 55429298 526642280 386821924 367470061 290747246 764909123 779466111 103250673 22458859 138042007 74441505 105500482 772587491 935804416 232863986 988076471 14092808 786799922 501933578 802226300 441278077 671213937 14153786 159503249 571616093 144303895 566694531 818270537 539056947 271889 411472284 891535053 556150144 7715427 443694192 730904727 537724217 992488096 102503070 89986807 805707590 469975154 94185208 35145873 2154245 266171160 753469956 873540317 959377604 112628707 635491966 711761062 398939210 160017592 122120660 312098444 626009423 760428177 358211240 683838338 493464575 491682812 548189522 601890640 474819451 619849626 86159452 629262610 300797527 470155937 851014404 534048183 477391133 600453467 650335677 426826883 180617417 341966245 176752814 931372941 465765708 585226609 501847601 154053186 481492490 724007748 534968149 473458144 805207643 679916728 426101853 350745084 60509709 360284411 497122111 653287676 241788896 507871055 464546342 906537630 597830665 137251720 816326129 62188656 188906160 192650897 478089905 795948117 168098418 420769511 382141999 26787078 510130911 774628124 967700067 504574094 812299005 746667605 793441790 513430733 856142787 275425485 701670625 640540151 568989855 225650768 227339428 421638930 197055473 939148481 573759248 373531771 754306957 259140244 656120485 643941986 835337533 836538196 508921621 29824329 879135037 753553438 330303943 337257097 688605885 615640612 329854549 829433548 912131171 45160748 681922830 12740756 31978182 617909775 963895669 70581939 623167732 428053818 774027456 696457425 314179821 156009776 468706906 891325418 764974117 904417029 18457185 45583565 49422854 826670309 494636072 158793886 432891500 826352779 659673270 957797204 674018855 382756298 773650246 895794236 650617724 373896456 599968197 30746740 62106276 421477310 252735319 745521521 232646220 369414905 365455571 411023737 697639956 23920092 603866946 54339114 317457680 221155868 837245028 6581489 95481930 52059266 224991019 258380692 868314941 962291565 240807485 892204201 407870044 49522509 413791862 821928988 967492489 161922857 906736996 84700589 422251678 18986266 771446729 422011247 86580200 474317006 333303837 596105291 542971046 269862918 241253130 199375995 848394126 90083096 475845102 88560655 53794633 737810285 71917404 500311915 325090547 410497028 792500123 228688327 247738012 706657774 512037669 556446638 993364425 651615952 268429610 298951040 335214067 860681572 922965515 855442928 937848582 352593400 185402847 401191046 623575012 48558829 7506673 769615389 557387488 784664377 777283135 131658086 519598148 200314598 98067453 795863908 184813771 707386256 540689424 120571886 704001575 231452395 472841876 619346481 41832828 736107835 87067223 433911083 710739939 94790619 128758619 529018929 362646760 908576695 240675672 931606378 35727117 707516369 572729911 352275025 177832005 450435007 392859800 118550070 931182713 744653867 740234317 140340926 190187015 609811794 854153437 297557599 782178365 523002758 755531266 609863909 600096226 253744044 828348971 534198768 691010990 341544895 169828091 605487987 984371406 249390411 627449800 220927031 794458465 847669234 307612701 458695254 680838397 433968107 87547448 756449728 185423146 648482942 527416716 577614521 681708005 983018121 379761472 851495001 630774815 174624510 350809263 654063883 139692092 24962914 750536678 214027022 980999317 707941968 239660074 786377463 803565558 594746868 411930223 103357997 665040928 273434257 306941409 671074156 356974152 158094588 574181983 524015939 480493974 130230558 551230715 364114070 403204520 886542965 572727931 41109788 686567180 754275987 558252507 902142433 459312585 741825438 826146505 304725446 153215447 938693839 115903528 9432060 372095394 944498419 628143758 958963853 274376331 718598381 877400261 53156563 128819047 755495474 517867085 356398591 801239806 578241355 516599257 247915411 611993229 964123734 215702990 959659496 169695813 572487558 546280647 880503977 579009993 679182239 693498387 804492630 953962676 84188283 633928757 651634115 331584273 708531079 135545699 689095318 154601953 430613062 555055112 392485324 873445785 878531789 595224387 810258228 781472417 393334341 517675366 368509170 404440022 864349037 35504759 739184126 607379208 387913494 575869618 785092771 277944701 230490277 384981765 942008576 187475564 896696468 468022674 37116298 139866499 910023408 569130033 789725576 347391842 522567132 299693803 84420502 139903006 894151694 264701568 388453923 284857279 493330253 875523810 880564722 947242177 249119481 681983416 272388765 79230103 665160835 905196764 421898509 959970851 113398256 780554973 731184643 742270016 34041946 978861438 175889555 197849657 989184111 892411957 316332708 146569806 726806256 105257133 610612081 361735734 217377587 880049476 706569226 342525848 990803874 686860686 753663444 317608081 660515898 748793552 328022277 7317041 794960653 783776901 976630569 420074237 14636224 606877405 438816160 895891311 249712910 440922425 265730589 825746545 102027075 836550320 64802600 76324838 376623297 781101198 168722077 764881698 291080062 295824079 721196587 667684716 641259140 201961640 350873559 678187139 180065905 202993919 181762678 144170774 777125364 971142894 760291382 555076939 497621078 273760836 149876501 339757881 383523310 930627075 851519336 921126253 699937964 159869155 578487894 691063657 50804879 936342478 153909851 168620064 745621039 405992034 557194182 444991100 837556020 409552754 89284410 938886617 628237020 685724037 746658865 919641735 195460729 211843414 792956276 306044491 235774449 59195986 634690980 335672542 734606909 197027101 461806517 229494381 232489450 150244877 450234221 671736855 459805595 366117805 610191338 890455154 333438596 354430268 861612569 83777031 953531633 523791660 747714880 472028113 255335613 892095907 210041205 973651906 726879195 909004541 684914212 837801791 169906385 106091080 275475596 320056735 177720632 885584838 993209411 977355951 421496381 415816559 925398958 80945969 604913955 486665068 616408202 771236184 882594751 622795933 454094950 602497357 970538235 994286868 82058534 401756590 861165907 986349720 687620482 852246538 405253979 978647843 260230532 346660198 542969399 416885092 537621262 384048827 961367073 154562366 352117330 222629749 149725414 372310087 432567384 430649845 115162217 680912970 991884155 989043728 762549023 917438918 452113900 153264015 338696338 33749100 169143342 127277229 800478175 431593892 981521816 161025692 150114359 153856777 12759254 920865280 251487073 565863144 570520169 660211570 129609270 58201798 803823394 558507518 236012836 57849303 821695147 675443109 545691308 893848967 683900414 115941852 831680997 756209141 16887787 139946507 857729782 147148915 666238359 615277072 447303071 620981256 199119608 781221561 292328369 254298094 210567514 667392077 630529937 307805204 205519836 126217476 719714489 602686876 30320628 567534986 691244087 481081182 725499367 226035584 130751277 672597604 942163282 741451259 349280591 455404140 477111204 137708547 442702696 709076073 869602977 118094101 825598421 261232386 884985568 303034274 695745288 424998162 990703182 856816014 264917510 975752230 815565482 275979442 788966634 895227138 567418374 361552218 160846688 711372317 227248460 718359751 845844778 682841632 186254007 228308910 587433119 987442794 405989974 17133751 156103975 24085903 745303692 992808703 118772672 834486740 136267411 845819542 109034364 40988085 979126004 166712578 403911681 510264416 948277776 664520122 157055495 629666871 74039962 80963756 879777246 71165778 356833307 315992248 666309093 383136763 575986029 927382067 272072980 56684848 264109889 118059365 677110643 478930212 46509209 417906443 50553505 172239294 289307470 468210901 747100750 280830232 36280971 555661801 133663425 56638465 101242192 974104927 742919506 845085820 984472304 308149442 904400113 100535359 623877011 434072213 815354014 706138933 808058549 551982284 251220974 257209852 217655717 748503375 433707405 806873704 114729991 227432571 169452982 30783486 118487122 986801056 657987261 606134906 905649235 231262596 666263941 593757257 884150185 663665374 842842634 537050384 956026438 73203420 119307737 926399011 674093300 347234205 700563091 68556558 842182094 13459128 96325230 360138256 510413506 9303988 253325491 155571867 931723286 78390414 553223233 226462678 44996320 716495414 374199305 961172763 969865613 239714065 855979408 927196793 889604699 418771320 517005168 546375474 838848990 282407992 797305303 130669630 777207167 479360273 928722694 7188679 871576056 601469239 504150995 59838635 826735065 581988820 664287271 781034750 571538439 354804868 560626561 521143429 9965623 945405399 509183858 981525051 960140663 978575314 665158687 17083344 215618726 733270638 647041218 459317797 806020855 97886744 757480489 934461393 687283314 304973872 51909942 623043487 994867315 638194570 883058525 100961550 224855081 794154735 796223273 511394511 972517656 979282333 59548343 196152139 881799576 58153923 174558265 378703131 686152019 647147782 884438132 767230350 301156811 528586495 838096194 122423590 294748882 381141435 769419793 742653467 67382031 209344569 606422627 184237782 641842304 613422320 782006348 431699575 973185779 662521414 111164151 485171024 892797579 292973338 458671393 733778280 681515585 332849467 955909532 83408634 990725729 787854830 813782478 812769011 707449609 263533164 316097071 582504823 886686381 774725217 426855119 151239772 664436886 985841775 569925069 78090669 859381086 200007849 419589601 38866472 429407093 772416792 839665363 749719489 998984607 151555642 536067585 171558941 218767220 242754429 165216989 80888600 130533343 12009417 958588781 927839551 920396704 461109747 604751562 685839959 683291082 957759819 131270561 972754388 617306181 215177743 825506485 64828771 528720461 933700085 893391195 326215520 212398833 791767205 641990140 335133536 611042197 80582205 635678358 482789545 32759920 809167819 441850172 589459637 819645199 812060118 543795857 305246643 266561232 812290774 113675345 263409414 876115304 744797111 681125833 488880580 303544670 512983131 758025818 120607032 239816333 637163541 90465786 1352032 220529830 349963822 478400434 397438319 810548139 941816931 711039521 466516044 702561910 928081765 559662071 305309458 705743664 306940760 381438587 13858702 629094362 952598100 159179270 180831940 308058311 805628647 205755014 525584235 812261152 334178450 293041660 99773036 814118239 387239495 40408830 452545382 728274900 916729074 331211062 42715437 366070051 707137005 571469792 327496775 352966340 237683593 217513040 510224750 569444738 13646220 399820394 571724304 484853245 51272110 443323688 248214738 558275880 813855259 407789336 805757961 784864971 915038196 503701211 998497343 9606658 416817102 465483176 869737652 355683260 242297905 94662598 425106907 391574333 506314266 55956757 961197016 466752156 724916601 498057094 22931721 473911622 518154164 595420574 494468730 570617465 222080034 623970040 199293551 933080010 107950737 168949952 569099998 18084767 528297921 480345144 662226930 802827190 882643431 600105782 254085769 569035676 529745195 526552740 590522039 901519159 680821802 289889535 60420673 428203837 428175988 151796953 801242403 770131386 752582415 627456856 909080587 824690830 773218034 979729588 817303259 745780717 142330251 922631868 175423787 930800861 564417338 260983634 268967620 48738747 627995603 944944362 546501670 750347958 39973152 904013071 140475139 779293779 825590109 852919519 767574722 105795047 639829434 810611082 557757693 606885920 694730461 754729686 536474627 803339645 709116765 648896414 493508438 23162577 906167368 553157710 183423022 506333124 497745310 941641577 346767861 503931730 854974675 246691332 968313034 33665610 790708561 550011976 770280958 236795344 503544564 430695411 372741785 902177243 526953612 158216920 188169686 925484472 241196638 184925530 29893026 401855109 367814308 599907573 448590113 560268215 162960904 368840374 695165225 544140180 957238829 361575358 892124870 305100730 252054054 912004034 364936628 628864406 950875901 838325646 717759208 399028974 472368686 44482429 816820488 305230936 880725545 632710147 441191662 19442624 861730515 911426084 723372073 576503014 344258565 171268602 425856379 561484765 324606476 831911730 224242524 732268430 866471975 78937999 452858485 622867507 306016013 737500518 780635175 108680668 473317220 80398369 101978882 583196397 824170059 115975356 812601166 63696542 925447121 822086219 516185477 184539514 487413115 533548146 785136342 405742560 158425282 980255211 227178404 680264325 706026386 811489540 75529221 298572528 331473101 826418718 971131972 791059453 960688838 338762799 713318752 427000411 900736967 455885633 771484043 962242830 736788107 57275121 639860907 313097197 534354116 266814705 904541916 794003493 444913558 297322886 519848683 296669364 142469146 268793866 147385053 350180079 533921244 42639723 968073318 114796796 364643166 285331626 40169843 143414361 742988947 689919326 303337121 80247379 232517988 119166510 868096451 815325840 388401711 141656922 994685535 87007110 608993347 716161843 127394354 138095361 984311909 345383071 933576104 856708257 808736589 612712342 619271780 6022233 647616554 945176999 319337918 611130610 232366362 427663476 559877952 169972358 800978355 858159665 333984040 392019717 206121853 564053033 740531434 596289715 454539894 617204025 180454315 402304168 72366988 659898451 75049159 254034767 504423206 19570941 440079947 469451495 242498460 266113999 602806139 767680005 151088570 952566009 834954062 929997840 983996225 740010682 911601901 988017092 701800806 122707434 349493304 984508336 239220050 941804145 998100032 493277368 717178016 728825293 963187150 580024979 586072545 723821457 531691483 810772557 759426843 139445216 731293206 847283399 569997894 876653558 920993633 492799794 509700558 435275936 175914068 7543704 579814164 684625086 568558009 287853395 23522541 305294792 131885838 771178900 529718817 94716486 683140870 952459229 281844205 411279447 265098248 431539847 67991682 758257707 518715567 709339965 834412419 413961865 832804936 546347391 875727499 990198602 103450455 945160480 237492645 100477916 33704978 735843017 335662546 565118911 122354916 745002612 142524295 412792587 372749036 690018801 379335980 819911401 851392123 13474148 796232094 855938069 457122202 534218693 787863213 218522467 884820609 167072095 202885023 597351479 150306849 619205713 590643115 610337035 32299676 396595984 48145023 844603373 209073607 109777123 704102587 721163006 806946223 844856934 741876340 118934260 284763921 561539080 703072178 837535641 119224800 617137804 168369906 99255881 141339586 257318796 441767844 466431096 629759124 743085553 81631406 334966314 869753058 140350588 684826343 128167033 446474863 622413889 728162205 278683667 540429491 339534118 955268880 563516858 449836888 515414121 447481076 571752130 895051453 859678999 392570611 493233558 472704627 836329622 984684329 129760307 628510146 317554972 711993510 797044394 112987173 402919989 97741808 587011491 437972938 399090497 165658494 306932949 631918099 120985075 477362238 845130639 587607575 107445971 938445327 585845042 732700961 957069757 371712072 283860405 30613808 827117664 276323887 94236704 115817846 613348544 807560067 60431121 166715098 115017653 155625715 336140090 639241334 418373482 439506085 637691872 639243801 39096798 174079664 807775070 210306757 115187558 686544802 523564448 52295986 609692457 146758906 278623913 786749514 624546211 885124015 851906829 622224811 495956771 507134631 614848631 259951144 381283404 94466369 827130917 627379272 884702872 385979852 360419175 366196421 707529424 512891405 226988579 570322191 531194261 744591293 587443540 750304711 957890523 873940233 953619334 829068612 263873896 99435280 280157020 647393297 97355098 114902633 481092107 423523693 11521182 622357402 522434012 735896009 111399034 694967714 880123053 244013902 556087555 950647408 295012465 200072789 749654952 697436009 659840939 526603244 544610213 156699622 955236855 96515672 691700369 417688499 913587842 247449997 726614225 836139922 437212301 590794680 417564706 975390646 843820526 576734134 188749331 437828168 838741902 434134426 129438856 789432294 346794476 859553579 919722553 617482271 510029720 308291683 29781808 752948728 299167673 667121649 367931727 17618026 785708680 124452280 870535368 516389089 794546131 697819470 903632547 784614334 514339707 278499966 733078843 373076694 850365942 206115782 132467393 165964786 900504781 341971674 647504312 741881165 485445919 689199903 43603831 857644569 196942877 200089649 289242282 324737274 88126860 231829597 931160529 675468937 320421958 780547367 698762176 102955474 4570297 893057990 139683870 645500630 850468198 618535843 192200166 21988106 727174499 122882270 916409320 640815063 781119194 688235721 745163593 528596248 170714504 327018090 917614590 142131103 380268350 459713277 809962838 711552431 505035876 55348336 502055533 987436931 720812145 676835814 978412730 708761542 266005108 410099253 628151938 848406041 48641422 539759208 836687202 727626641 156925814 569902141 89899209 117089079 45219571 835804839 817865339 990490758 533258341 855581261 555347215 80143855 659270205 141582857 624329842 839627608 679465857 354598763 31774818 735983257 34747465 740482356 673449204 563390462 871443524 660509147 834198799 147785416 190916916 679109643 524937455 212905388 312533869 450274083 487032483 678089042 266762330 825828277 931961486 276780247 930559737 915831815 874766825 73852491 154252378 543270037 570793280 916143924 412551715 958129805 852724465 569336586 853946127 229072977 210694064 679320505 585993066 757749241 872106246 764456482 409991063 979989966 407447501 707595929 131888266 728239824 727333046 480958312 827901519 136461105 262576835 817448779 810780801 493138648 183872461 718591475 163908819 530752479 198221055 773552259 393121675 53078806 308623705 650916374 436304898 185210494 399933486 120111671 581174565 353076174 306858406 10102118 688007671 9236208 857527613 613978010 857436685 762313349 445544002 494842554 461173776 750742109 44591705 12179235 399143487 686166017 126750713 822498853 20618474 736519977 555155183 811980422 712425720 609432134 667486937 935461117 493477474 91448569 595648428 10663608 774367413 732382362 306424879 285067735 668923284 561523378 33240190 270130670 330508084 481135489 542506631 266164359 340328671 950592633 175317648 957560222 17039730 982830272 629010351 370421795 163886046 305438642 171606609 549650555 611453866 582240093 425976500 913967872 627752303 44983044 526120812 76268668 782290267 811495325 583429602 867669682 776383919 321010771 558336208 257349845 444416833 121530628 660210374 650759183 796357627 780584131 265515176 856112124 22708570 145773143 268964398 984365868 365032175 496897211 176417379 115437988 609700066 806814108 753573415 948566365 373928042 897079262 384368301 787549892 404164182 299295768 788174333 281387833 451218823 685399827 407780723 98049424 396609395 684265550 25619006 674666131 807845540 540944509 676235746 848047997 765470007 615467014 493931191 77813888 175435614 475860354 469468775 377791809 497739742 114463298 461292660 514002263 86926994 643783880 569265839 338199247 212442342 456795465 494609346 838914731 980375132 592385586 799303592 821994846 515682571 557627040 798572079 716999505 543155739 496584934 341149565 161483618 36502602 793703179 174298248 930210656 571832938 715563849 340106141 828664464 780542944 832689296 825174234 35967531 134919975 255321856 505614003 346711517 869041739 581448818 293251696 10854472 723867503 354258672 999978158 935070591 786790215 527851321 294044122 99873163 464817054 829879614 142656697 643205866 998976466 390344872 51525859 902152971 478988627 402603343 372999491 137560787 645951015 137144260 936444057 693898523 174410601 99946952 24015864 708480303 230692293 675233491 312863560 668779344 937687550 349676686 587167173 996057907 580751721 622353753 84786814 691881601 31996015 466297030 783922903 633497429 142287119 520921116 37913863 149516993 750632281 990878933 346472603 759194953 392926708 721150752 163760369 743799653 639833753 585938015 353283006 146282500 917959317 123894186 832508809 447903492 477096267 672371787 758557741 464278971 314138800 835735104 374837595 902064497 340591565 244706493 350885141 387832291 602671937 139858087 962585140 233650626 96168893 566013721 464963300 243167538 44192390 692405219 224357667 995329099 798987766 139232774 568096069 499553180 347671034 831440953 284093043 47379107 314022037 132952423 820290855 812082262 967769692 992593199 625819057 619025309 80004345 474268259 493430453 846259157 708884905 662617481 856189355 115405134 392734653 158558045 631266654 312559054 399678748 693233485 280529518 811035405 736164032 934296060 787506126 828653367 388419381 847559615 153362246 646309741 865551645 238729507 196003826 947358276 107153326 629297509 821374657 300411972 958098226 210181368 92842742 335888490 130475398 63290371 214518443 964778662 836078235 784820960 408128841 467067998 719959289 526427807 961064466 432193769 699533879 919068033 483396248 309142549 818115972 443364221 218664258 684908194 801157665 274464958 434985422 345606853 305467365 265359906 113050057 636650150 907747768 359838141 308301593 979031266 689810456 207793492 411246196 646972681 297805719 749530339 352248806 332470817 739028826 635859735 712913231 693619489 557608348 904064469 332182243 405955447 747790377 903613617 506174376 564932995 150650083 707326328 961515003 68412698 844934209 666654887 329988107 959492099 398207947 54088177 408247901 756043389 175603359 235886268 565654086 569693112 486805999 736372388 874949748 44107863 922609537 102599671 456861030 924375796 537108525 417999928 523893231 727891612 216838755 71275165 658817975 270559055 347625123 902759057 312594874 119683713 984030722 936302130 499167943 586681756 870351531 252330196 362515458 374125180 494205020 503883644 388030818 470199281 795507941 540299109 476145715 384841793 81408173 375307903 795476886 147967907 425128237 161764331 334855420 707373764 529456498 896607360 141274287 430058822 606157983 184765769 167193674 449063484 29146729 707090437 775709499 61178544 622910361 170128294 89787208 904150046 498195598 53151442 555373319 243023094 972293560 364163173 650202212 755465501 998817310 246772205 17980191 137931884 270853081 679039021 925784907 4201776 510617751 215819674 799312337 330788008 25122841 716584673 349882603 153288587 637058741 793675103 563591337 294246015 934050772 408848295 992487279 800713379 738154613 30668288 331727989 15960070 252178344 635378405 189811782 371406381 140576020 762661763 87650625 711419537 33939827 935915582 749665307 115402015 403822864 434835244 310053979 181205174 769953360 430807704 564492509 655570348 500623910 554326913 114836560 605224522 526118044 457701912 385612728 773057355 835998033 714316870 860425964 244136033 838811126 282972707 577235225 388015280 750395088 459893376 272780605 247573329 15369017 664912222 455281837 148376529 510029855 813532277 620186511 319902383 586409092 719645614 882243425 725576673 828110332 148127145 515550576 370201424 137947442 419342904 892426594 990126935 986970211 738513634 453305773 259328328 776338401 368354145 692217373 108702183 446025873 845738020 413989458 884707821 50569838 326038222 18826303 47800454 711487748 908766389 846961325 978687443 381857269 726290788 601043894 939605353 121394552 966625561 505646410 262122193 769956565 390787912 141143469 877066758 852119274 362634006 192978935 480636922 861051561 847744478 469575826 458532112 539943831 83910064 519024576 507495843 831199823 595415501 889058835 606498942 770511613 894763308 551600371 952275299 620041188 968904953 548613404 671109 12017624 936224528 209698077 682552845 70561989 280009862 162128857 579093144 246183462 898218529 766798090 508551095 772067214 178844379 485993401 287876973 654112035 885245539 916483783 261711797 22954525 656574363 78242664 438047482 313089356 675022619 150395299 474074781 627863952 377684909 566980307 437293939 334968926 114643151 861149737 68068420 32007234 351664948 99647783 284660813 570293079 22587203 990175782 134044095 49251793 47115670 927637201 682092606 837581939 618919805 135039656 959014754 847050521 238339449 886696318 843930937 868840752 37904321 307111932 272731843 43496505 638945984 839705116 270386805 392264266 613981076 843199406 568161975 741655692 623076497 748263126 513365606 673700798 20151228 155171980 309122898 849100464 898018641 3107098 28061889 149624521 107609662 371711138 938492395 528266370 421632165 409819030 609287291 92351977 95132254 845152062 432853268 278929695 901069170 386922550 56719306 104170202 461404833 388907244 674332837 691854052 305407965 539969574 214052898 852317338 26118349 252820347 966396849 280893805 648231243 315094997 171116088 197940581 808620006 406351861 735666318 481423257 747265633 21902575 650414593 95089336 859496498 539479209 975207121 598687107 145698052 227758689 404555954 976308560 297153333 906502436 613572430 182918281 414779993 655463512 33138369 515509547 42746293 97544755 133345307 569629512 437538501 618008641 305608674 207172485 769333174 910521826 317950093 364423580 332777452 983191753 307058442 536572635 120535678 848292222 629461816 71389348 961469621 35660253 808630894 436775147 96025233 373980053 269407219 942140091 78763332 726853802 911653763 854404785 659390900 794744820 676571088 496733055 120399613 875081630 30914303 191350891 443459309 756978087 715996967 339159501 845544583 19212388 903440598 399493012 126793345 726658300 537016203 659011010 676596165 884721131 434527293 463087852 804513267 435718016 378326994 815715003 796176350 528322142 175204777 258023533 627061771 735051263 768274961 481029972 592708917 872279340 688219343 358043990 866137803 971820678 762614172 600894315 314104688 46829825 585291941 483420195 335858043 836035683 315693322 658344477 421538165 30653898 249238367 533340817 652845213 470474275 195643437 739955655 919547239 808994995 560664178 488052638 148823032 461432722 458171421 977280006 378879148 103071275 841649299 270260102 630474897 986124734 234211117 342697399 851492841 254639583 177354679 918091718 427738284 864375540 307315955 180740342 32896259 372693178 51693332 964210460 871952334 988996288 723550788 576937761 845002528 562994410 749333790 234176900 785467581 298574831 735922996 290801877 717862051 158165980 524062090 816430651 197325182 842383504 634902809 30528495 716341042 694345790 18909005 47603647 578559829 745301485 965987464 852387212 955796913 493383163 105887389 406855116 580381895 802053270 811150677 754594825 364568135 568848962 620821229 628121439 474164122 435120214 933730966 410173698 549752920 436439422 78532852 806479030 476826834 585339450 143025824 988352341 901534857 334038366 792655526 834626893 39774388 32438416 226790663 364848415 825703615 15926990 203040056 785399777 156590278 322529509 402094754 680248253 776223774 243453947 165522208 75255920 180721613 298750469 642039172 788719052 303831309 528644689 175457298 956866614 968858061 179485182 440430850 61581096 770184496 411843711 418987778 38058928 982209547 5000221 759388595 650797296 713971563 385158258 724372520 496362140 910722317 329416430 380312426 243009407 25589733 25714005 407378678 402873334 222860440 402204734 438724412 205827187 98173441 208244630 336474658 26888187 598869424 334060827 533356416 23826089 774442598 483176674 100007842 857980457 839056026 890869202 881468873 523425853 233316087 722940455 833427114 908452156 416234204 618212847 977053421 413204110 651175130 962649488 548063663 937053489 920970554 898849856 759611136 558983223 443339893 979927692 213399654 519294790 523590073 571804370 352144217 614254358 731117931 699076038 720267717 603206647 976073631 802858737 281155723 387887688 222052514 649808685 553907711 136869633 37954929 531708202 17024107 536285738 51706943 766439405 119316619 936252257 158491379 619112268 801505808 239707737 187690919 371433075 627652125 545722709 711675690 202185825 792652237 54300593 20467583 279472236 269217963 692082266 284356700 241696953 786736440 865643600 881196972 261492421 216296296 827526955 402908174 194292191 455591205 384501651 160511827 740684203 381425355 652214727 107097859 265690784 958545322 441093655 279819993 667073675 581954184 282057066 824729923 331411722 309944860 586086329 132677091 835824658 782175636 968713362 759542800 932254314 334332688 371224470 263774038 714335790 726106660 972016891 832857585 997548876 259154522 747279882 718870358 672642570 200176046 129328034 340863659 934481790 675523344 48365235 334548810 62755860 981578982 185180356 932632386 60717581 350189447 388653167 725328342 239391738 423503808 769152479 391051772 285857092 616503635 760677720 25952990 477205672 546208628 210973616 341798493 11422899 633207626 903505102 649406345 449463882 87103092 160980530 477981482 166074149 964072833 191674221 405904954 891527247 41050230 177469604 494595177 755188392 549344077 730417425 196105880 168926563 96460912 868235138 820241246 977698952 650395970 478682840 486708102 516503411 989182614 214874250 626805391 442700115 387203894 120908063 459602219 991095212 50212957 257352375 399480256 525420246 950480957 101394819 466638570 887669371 234080891 943379017 700576759 208912413 855023790 216521953 404627305 549299597 612858595 715090106 535157112 248867189 782185500 122644822 34279566 568542160 9230540 182332105 106193865 796395628 732969821 423927870 980951932 535395183 558918826 583080050 294985646 748847055 752228997 465987639 327930521 607177688 651451954 739135731 839809324 96683434 330185962 11199774 834465162 468589497 951591513 380594887 163812745 212887883 53650721 734414864 270186804 244724478 261321557 475195310 745561930 340259647 584180990 917132138 966521276 906678483 956079258 994955938 982359602 514140498 550351768 647652040 347598983 407431079 461051613 259675106 664807241 815567506 80064322 779614472 922100282 366927654 879030803 386720490 598143185 428618571 187032465 258942536 241845434 878791229 336307057 97258103 820566610 746139915 834749788 149039075 665294636 195832089 477159789 409240199 689238670 666503326 821815990 714477686 364870644 711903527 674313147 382946390 458901900 981794322 246267637 870440928 931507897 669165844 247336784 150530658 738019985 636440756 153183917 410868029 375079007 916422349 735713377 664996966 133448737 348392208 438649268 765768937 255816458 313282943 216054883 884549474 551036418 879566579 871653151 72187522 28193 260700056 702657548 546948496 569575224 206046572 222655811 323095781 169519176 373242051 109270864 508015215 159950856 641182918 544788404 344675887 427719011 328319471 182172004 700387515 710419448 266104462 83303240 488901564 914069145 855008583 401559229 508307057 762764236 310994834 525111316 549628971 882642509 399369274 308938512 773939919 712215946 691273695 864571756 184998231 990568485 732556148 312981843 481676369 350994038 298091201 394287590 160042590 132287239 203776737 698766266 206638260 267963158 556065989 404090199 484704669 77789462 845030832 92323258 806231286 103259950 868495290 994538195 272144561 901512120 600305741 192504840 92663635 557680067 223114411 506153649 573027446 775833490 89594981 439961242 506382152 353357083 286679525 693829764 476474123 473182857 634700006 374716067 56523667 680646843 50568438 698403617 391699403 889147842 741512699 892009626 327793200 701044071 520747691 681493150 586775892 922794914 450570002 147628083 692718173 461175588 316974864 133415504 402355075 113951694 18081497 691784291 511501973 821454648 761062771 331308748 55257973 976538923 234749755 754754912 617825943 587509287 295241824 958780391 345213318 84263390 778843495 936203421 305483104 903223735 403126181 249725621 719613781 276169036 949119944 966745809 570953515 559923436 544088655 831206796 526849469 154961946 247597069 151652336 50356599 253429260 473001130 236398080 667561692 891005997 586181410 204406064 681894657 369970843 940638788 588467431 104981007 886618793 839055667 311095044 165840324 657509726 657692649 896098390 216508914 646808565 444922799 519942435 637021439 696974427 518307751 342257570 137676900 96532404 419766082 775687809 363659054 222053079 398132426 941788511 902279296 117251277 20816857 699768147 958927375 277360982 91642336 339033955 599722661 964359012 749608098 866546446 728946334 290123165 176167606 139142851 426578030 876093661 607586824 972741735 468844312 948517554 681935960 38682579 875086008 851563998 472651705 616819028 164289275 1251033 394724116 818094122 249263010 484258381 86466723 767662857 316559619 950460824 389019766 694819483 903495303 930829133 173497585 804099067 418461997 753132467 442936140 899568955 355992582 730069316 752325138 225945055 483555511 403979056 793582498 550935392 280348666 75532248 867877041 623536555 219873309 948251987 743427270 465764767 896625537 274786284 492708029 165460370 199830300 291846305 92482885 67855821 306941176 381707174 828095330 689491211 471664818 797362400 873978603 628976894 187636219 853798507 594566925 473580234 687830299 657179413 67708614 284057992 38592873 823546592 649308523 839677125 692228564 723059076 46768930 340475648 923931997 350419690 382374249 781444143 945086874 60226994 378262413 985257531 573543221 214166446 104391988 537209727 865063019 119695973 209140948 956200781 350026638 305724817 889470521 166397033 179057539 905500577 352450819 882716044 500652613 753661496 180277541 669597666 895912288 192751788 519127911 784682380 19668087 987058311 147171813 458354207 915527614 819736074 872016527 80173860 594782848 405192357 526574503 637112982 813374874 221434240 36959814 369803623 271069182 86897142 33778902 186864123 470542130 873702932 650613145 616400042 804777422 52676895 507775265 355738179 392407554 269510667 145043158 142022788 654850061 535674884 739840372 496356003 599086279 614103273 996113290 823924680 277000216 25233356 976268795 937849744 410719614 844540275 996519553 144325260 832943243 319493850 982224421 340840640 337352037 471394735 531586504 629327396 510567749 479162069 119256222 809629478 473286392 240047842 261144238 265214758 260266337 807068832 748585299 314171129 233873909 592357775 953274814 306338151 301105981 586870370 291315569 35894701 849692504 951122302 586700485 994157564 670601334 246984062 291082085 158659064 382261086 120889265 26255057 737215289 194014697 776762010 411387100 354916301 939846532 549404783 712953391 380679860 719155634 423481243 680618180 82207331 907569800 206658365 213058667 529201474 770826544 783082407 585529160 702685230 17366630 64161503 549411411 528855800 795980542 312616737 485309910 191864547 200664156 27203419 476094451 945036586 916629242 84491183 307651356 323030904 310889190 629320180 156911769 979393134 366085697 332622390 535526661 580746784 266329025 648470322 70373585 525867672 540643119 521366747 217755840 637435474 909300202 791740632 352238185 421633214 496980323 209289987 775502521 693174466 7391135 803894763 686894190 279943989 946124216 885747539 477319837 15868261 202834524 388566705 962884396 498624914 853545548 414471088 714013529 46083952 984455903 231402670 897864753 739059369 839936124 741838654 916700442 281708889 535568675 473283240 488210506 656183440 467255525 857117796 841122125 504658644 326166631 539090083 682339714 24602780 685316964 424631494 806324895 97489622 231988008 684593124 440871209 147400546 705494805 390304585 807287037 304099220 269341474 637859057 703810506 141981878 521090135 55461905 273641876 685824131 519779154 543495055 746948915 348374446 759421125 100473477 341356754 671421529 866202101 885614786 13503088 513963678 232524093 119252296 813288546 205478154 939401353 474591951 83668431 851577117 500630491 939598401 68621107 891782091 359756746 380821820 599640796 699592701 178056702 213841555 549078896 163140369 370866101 128895181 960648293 3615062 489716801 568951973 904446600 435223697 72456584 582275976 102978679 349013628 475270275 347442202 974553383 583382849 874514367 497755825 937297502 41645571 899266527 159207896 575153465 650578261 741848088 475631310 43284648 415286720 665325747 741429253 424261613 197133378 640407950 786558883 29965601 574770378 1825948 119228932 508381103 724647101 141427808 49573430 2984151 273382772 886904438 11312251 364381740 472422076 778831883 775539403 955751959 211842900 281855072 604952911 903415890 93172082 166568778 228369639 220210285 323354431 920014773 774711205 103423564 811257686 50704924 645394256 338884774 132606281 681500435 912043490 255092104 515986460 376480702 230050826 249596625 332868296 533830231 642034603 177044147 497780921 99212971 688918107 280429112 287344721 721639069 885479397 960013755 541579107 676148386 170974919 403377003 803520952 807439940 21013173 829979083 29805965 342065312 279565076 252428341 280430611 160162535 18863488 500485458 359565806 44238560 810092614 817911203 630918071 117381477 834237163 84988924 391433338 88082145 313843875 79370243 133669433 497531353 4836570 9363126 189304423 981881696 714944943 173988066 199490157 872408992 916756596 173762476 942259752 715432536 81470000 320020748 788386409 34013529 898389533 259238989 762337140 884792584 968390698 254056079 314310529 12685024 437264249 6189893 608016703 220315117 719043298 196974776 224863308 962213201 680953199 147644545 403354046 219731650 481453790 690445331 814415517 84757258 250626082 942227759 191262310 100280966 228556258 104318573 698062730 698240424 547965689 525247418 666882540 612254582 505237748 580643028 202996071 988455432 727742615 778990544 877441606 778830605 345775192 704298389 476491722 424408647 977156835 486308447 347708072 898470922 730884500 290547772 382713736 195638209 323331840 543003026 325911431 5802089 716142444 588543895 138163382 391836949 871010644 280530648 224496280 585253736 149296102 669522867 94845096 846336542 457124228 642903260 546268369 576987523 385462854 42298332 744499188 912429050 882478710 380769677 545035366 956277367 507051282 754420895 221303919 838897925 454172749 140349463 869122763 820432706 911154190 151157707 542709549 620238558 967627375 146797287 840020664 923650080 112019519 47200874 332224644 1497185 783511937 723040170 794679327 473380494 400191979 907769036 638618633 921767338 826568552 8915277 579113526 121953610 756701846 541838972 831582352 800887319 997080905 640788989 56887155 793202255 742221574 497737799 37061167 125715525 948251017 602841895 144379274 558351581 725540671 577622587 11230267 521494033 979045836 37582200 603053936 310257518 544574599 437257637 220682569 407332503 235898617 165632733 332956506 267996097 694279010 830096145 625533229 362576950 947219764 597391492 489543358 896082130 185631126 505491021 794877 255781001 312243170 991946968 399770192 901810911 759984167 906344549 387975438 606832238 892917671 66562952 99989509 657005412 402267482 475951527 742717172 887769602 623550058 169423744 860559634 21592862 585785525 86966176 423149445 900487842 310741839 434017516 52410860 507353098 685000445 805936924 104531158 218007274 793172154 454857019 496300105 429031270 443686966 504564777 227022396 549994169 72722514 393574169 642468124 524396463 726974373 574193171 680890955 696510250 900157690 298700403 965183644 466886816 789958608 128155496 967041753 496660123 657159896 638547574 415813181 353788728 720695931 363072500 443164923 762983081 47437650 401472911 512945845 828924851 889584300 388678853 239303941 325960240 707447563 729804139 88562167 318688143 383518375 499501608 48480397 476576079 413988329 338041592 145527610 432386439 199853041 200363433 741940328 510964065 764490001 69084257 636642546 362460571 436490064 673103894 751055530 709996293 467918569 543861012 254415060 703429381 634568393 653322619 799949481 480441366 464400660 6478783 529294294 29199940 740537248 734149926 564498682 626561457 396565624 448655437 149912107 721405204 255395930 353284516 962634098 240776757 106232634 30577133 348352842 805385330 403024061 285371585 511156517 884288318 904230079 567398667 716591591 134957212 572343245 565729675 885144169 691780008 302037932 88869716 960864247 368307470 430180304 271609934 652112083 225084305 637872101 74993077 477122736 671225990 180999754 97540248 133769015 593328214 570943633 992596571 310690949 453828864 879588865 598041909 625460139 277860500 546280468 250261683 18398509 374967737 456632057 254542387 581465988 773661736 31506963 482770794 835133340 989764398 285549176 903515358 887172950 132093486 442074482 116203629 825152007 252492061 475966210 658570693 984447735 940310276 955240536 19671785 852480484 544590466 887618140 239833266 923648380 257594951 728881193 863703372 852180454 482212762 964193164 874078389 602135354 691383508 994794377 968672065 973478916 862792675 311896279 772972568 816147909 843410632 757980255 741750711 717685106 933882905 188250560 462228587 215428595 860131712 843660750 443875545 504818853 129239098 512252175 9425529 399371225 215073176 624890429 490993174 161269587 380704129 969337542 13237327 25929419 45426926 320757583 344387610 311323759 330117229 408045101 284597052 999723359 102138016 154344938 137738961 477386288 11082427 329550278 219345866 160465258 33197320 694615091 112280426 313699850 828896102 521463640 237604297 747517441 739432902 936231312 783534161 174277298 183409837 515060200 649153092 729078648 372149686 899745956 848615219 122020894 162988045 682263994 954297736 276950373 217492724 169980757 678369022 917774721 396139586 74641491 302254883 173148316 12782814 806724296 71593949 574133074 325683017 156633721 2055650 311550772 507927058 700627298 559705918 349007685 484317791 743769649 626009553 369440384 907263082 18065608 922258894 57856591 228731394 859137215 868577854 607273749 126950150 95018975 141075323 190868646 798199790 430764712 298166197 602794186 651502658 732364 497433968 781521854 215414048 87315378 719087620 45909170 734165946 578580212 465465884 490214987 452554710 417683681 759942200 497201955 742805580 442560763 984195371 381466692 125162380 545730682 528294045 365422001 195052565 655768776 294071690 784572638 546004223 947061763 6369472 571770162 301832306 473757567 974036325 456779916 995587629 592292929 688656240 722156987 228001280 790266757 173670955 939663621 750535762 209916216 261501624 959663777 593632923 256654974 71473288 273187133 904488427 893647405 35584485 673335928 684999010 854725457 571262569 526090089 78651574 929594278 776478085 526254870 377256112 457104929 562729212 322767614 872889774 393221992 551406949 192376720 362906659 665851477 815101612 238631090 331609875 765986935 426589841 162304571 515706520 353491600 984474919 218238584 822200927 93883160 535094102 595023531 477619755 947383992 89435995 372327815 564127313 960367313 781015363 143724470 473842747 901192179 272054131 123383379 139543782 431648870 922572579 490767216 372970339 199431332 61179102 952204433 893917017 202509788 377991939 58361135 982613889 937224817 258233927 752762167 434892841 424846457 637124145 63561096 638482354 541063231 568434077 444940921 550352658 216901826 467251002 638453840 570148435 892621876 291046412 771380172 92899090 486630011 439568362 765916828 373615361 298356147 321780737 573410789 437293157 50591913 976851791 804895936 858154136 196648290 707118376 211361465 760722056 672786322 574434229 446230609 426695478 851623718 72960624 725221245 731950649 741480123 6643882 803682854 458822713 473787428 294550022 866464423 46017396 317514983 757134587 222114386 378688060 176885952 496838485 20914155 543283574 893721118 369271476 646935595 218561308 36063393 851403019 728322622 991264444 998436770 808273698 350397510 201284088 812836011 88519957 13827030 752544516 326552058 710527188 557857911 802793771 860494083 772014241 452629030 917030219 817273579 628070292 968156628 267838548 906503950 4829210 258722789 686788556 471452025 857116786 264395442 874354254 139391344 861473583 465130759 897236486 778054122 327395257 685191845 965700919 493385744 697390795 696467649 16712885 513114050 674483446 1861251 885942379 777071633 246330141 93048200 814596567 533711814 814022904 93339233 276052105 658324442 763950481 73790226 625149608 267585532 951085513 620066707 878010732 400048910 589396692 511654994 700635557 950923176 367678137 931678384 174166579 465057940 929950419 337869695 96398475 576150352 430251090 318965643 363775801 637844111 689105595 801254414 807748696 928240312 762181732 454505785 992662043 519753318 585487097 556523698 390726984 668081894 355104762 312566288 155777464 286053052 48831802 684017505 205077209 798636062 127232354 668830118 30921772 225767287 246159979 373033809 758883783 128009702 298144808 3514061 105098963 272725948 563532474 335685366 736408079 432797954 254239001 959021469 421233739 970992112 100759954 167327237 764338926 969849719 649116740 114293609 460673649 579926969 611407266 949435764 977965794 473973899 245281524 49793735 392083554 472226298 965835477 280591222 102333351 554582211 100720566 730129291 842653307 4137689 125182554 286629250 855588923 338337762 819748440 601600203 742356056 711355323 748327069 377397324 658322649 352764656 844716007 583196380 759041752 857396548 515252043 465719241 815581953 350538287 916788399 822281555 468937750 2949979 825448272 749516079 798902637 693103911 914717246 237718276 774047600 101735716 65353435 160157425 591687196 231070874 164546912 335706630 143948163 646762244 991999833 425235654 805106762 800473743 723259939 252420523 237777963 784092320 813718901 750927266 731208308 819486795 368325076 635511947 770465415 27075292 384295197 372507578 305595480 647653970 893794559 183618681 867721458 835227103 285194622 970651268 65560818 151818858 933307250 402337931 924207370 440668941 2532614 83087027 579844736 340267926 804583993 650635029 896978348 348986634 302400352 931354686 379546749 341184542 160099234 939477934 227244789 455723965 575273850 507190873 237534120 198218117 761658681 196928297 624163393 914036297 326045570 899606393 559876606 722227344 669148620 169793435 332460079 861917460 720757988 617422164 548901050 914178373 216300904 877646427 461653146 574173636 986990157 643335901 619715676 846937320 158368089 562754044 722406048 185833788 946246569 834819147 618599582 875889151 209671725 588933716 481909406 863707042 531919911 582648082 757767295 37770830 925383600 789056119 456089137 394413660 609185331 206181351 452771899 710733530 32798448 349338299 544725558 300583437 933477754 779280576 984856399 938879977 472588346 271608501 601497801 778373275 106261737 611957968 579176057 481003264 238727962 430540602 513370952 992238891 211102382 984355982 803125685 55794915 170901597 732569694 316569168 1067042 374979636 914320302 449947200 534105495 133994513 657708919 838650302 212311333 847476265 430147878 24591000 258570850 532384131 757256474 539079343 560797465 251340923 509091625 457667193 544305096 998561088 627578651 675065215 965940259 737761877 239062830 70450400 98037647 301437204 998884496 787139021 893755815 386809894 169799656 788913675 710738619 609724940 382088142 387485300 620825676 481212826 253049167 661036918 826079122 189503094 930750058 132052882 470068726 706216349 365763733 407243230 629950872 973852127 774060856 700500612 465734602 134157918 415718960 380908353 52777362 779049747 238356558 332998631 786278956 83278665 235674582 862490843 700123526 997818912 288444161 959885719 716480707 838055179 181132411 585491753 868352697 104814674 400131045 392341682 490750067 944536465 406110292 238541289 281166767 107959863 186818256 29213590 568081248 276807688 190253270 651057175 182865453 50000796 101511383 644558302 769762544 613941470 970507447 189864432 545283897 899101069 305406542 195533415 155666889 813598142 682111978 253203186 578915095 175978584 639678667 620126544 657425870 76376470 248297382 100840409 543791437 584988553 923565347 804208117 900218918 558526612 489314399 538555042 78096031 764067822 264707947 742511858 515903796 62729251 940100043 651410570 178926355 265174932 653663991 78166053 843512478 970542834 649528541 422265359 670847981 43441095 562578525 970951851 854039881 182993133 199888332 673956078 11969458 468137748 533111666 926634721 573363546 125340481 352157708 771814946 938694184 570854729 694149450 955761251 551898678 590030426 572908626 819923434 158350420 579258739 117573691 97069584 496932994 655238631 39711891 536746946 386266234 49292255 410266074 874594819 144421923 498823892 512540677 846402664 666243103 266636825 643779835 628101530 191221310 178168655 435187483 656515544 211011081 635579118 990615477 156650866 833968440 389765827 507997580 275273551 507306044 257560684 588524379 11624 614733494 442331102 513262668 31491403 320166910 297045472 784868994 906795673 658104221 491944589 602058129 850048392 494117331 669610966 527722752 245449057 327931922 524285438 808453838 588137219 692649344 715287068 129815530 164020574 357037433 577173660 958943418 346319865 286097419 840658878 722510229 974315885 122617465 249797654 872564041 670055912 958967737 625557770 788328854 313568171 580691702 466678103 853239216 414620556 538765838 547181965 183760065 812643189 867700244 234841742 290869860 94180579 797875663 848484371 35811115 518666600 63897146 621339943 367299867 646107433 726901506 140579498 813725227 520918880 568347403 856517071 347424969 118252763 839106284 490446494 950289492 697035387 718484846 727517811 705249186 67166646 449687056 434556029 308748156 696350998 348059526 365651520 795972894 202984632 337033782 547955731 216815288 940621518 773952185 501724579 361574383 172011549 746013280 276408430 905266268 804769408 440154029 195668041 414037516 239911779 522757333 561082843 647122942 40802888 780804677 107308319 435999400 356468550 845959450 628640742 229167219 706972037 57875367 809645651 361630266 659789251 647277043 599468893 839677391 520705746 127648312 786978640 106069110 422451223 277728102 476694092 449719656 223373837 738823581 195885765 549431378 587574976 238800054 317585409 664054227 985110099 818086075 26614941 682572801 492660090 351390827 97261321 272012517 454309888 486050231 783562247 672657146 690555715 112278088 43979568 463592370 406497459 761364982 896024431 514154481 696484439 211715410 49668995 199324816 733094727 675427357 442549378 860017883 944405555 99275727 448362577 475875604 267406810 24228369 877299244 791437038 270648724 848700739 660130596 322467346 704750025 126066423 324562076 418628253 378316408 843113076 797972684 55839648 240030641 515178292 146127678 812243359 555196955 622347110 871103316 835815699 317661039 177131628 902334144 252135144 350590202 301669726 937005577 827766015 367787039 475681158 765213965 392209581 301173971 414634722 792623994 889282875 905369120 717707942 616631635 437175396 151610018 597492663 479898993 736036569 738323725 553526576 44722687 559019712 182168741 396040929 929398013 686740529 458184644 201975243 163889343 580617656 53807191 673475237 568903787 740619990 943540322 893124698 339995262 814148224 893558904 238509193 693157704 61972382 696881219 378203140 723420011 112469389 256347394 535074129 879266912 375786654 180785670 652807468 117832434 767714965 984061748 660039939 93342656 289025834 573050758 763817849 159377855 598802059 836621194 991079651 553845431 338013656 411320801 925301198 718245825 380011942 36990401 123159415 436157903 616861309 632679284 722823249 148738084 717968730 434660055 643161219 135285976 853033518 735447516 562783847 456190805 567104604 21882632 470627085 787369693 906732351 353254389 865671861 262942465 276421794 687047121 253461849 988331051 746092358 329865182 421682977 697166357 42203487 537567728 577328364 669156432 394891031 821942514 770966734 344337087 564236042 685708129 601089164 254779417 47598793 730347983 668095010 998917226 532273495 20129633 116262461 629151122 353435055 350527570 217632962 983625668 836091196 859597422 545824069 1831433 935599710 368126360 970600851 217965243 765502188 185477188 622126120 251140618 965971117 373292541 462647481 16110714 707450334 194307040 810922156 345054563 319707055 896299295 899814299 769608560 351637702 589566336 890150869 855074593 490397114 19214812 292841693 818576713 890711961 478062240 614281705 874425744 966440546 518666319 806148708 414683889 245165964 701627389 89514092 194908221 572616830 368132054 369646933 510750359 637450004 683176341 177485348 718737399 160848417 906126605 77892116 144950695 112520679 435819684 265343253 327235273 64012960 33533907 825761864 76132558 554385145 104531879 458628740 548823040 190067346 393895747 733163732 938407417 309246079 69630044 222669047 470223402 800326602 294644155 735659487 798360149 860602862 920956863 112836146 95010580 932006749 579776216 131856588 610836048 137500156 482118669 760695099 674488778 338662306 754579831 364685890 278289301 594880668 287950020 742221398 147521689 513625132 851038645 32624676 769868562 934669061 523105440 523731721 265239824 109647825 685493486 963273624 883213045 453169067 333275550 962583064 155183610 20103845 221978561 23534340 326561449 981042244 937806076 951161737 964692836 495468031 813933065 662446603 584261853 960639939 139161398 545030816 179319452 87718514 423052004 302279059 344207229 17440351 926483977 880840675 431424559 931682771 916701871 955109825 361237430 859304332 537876082 969686806 959064041 565683513 337456902 892435962 969817588 554790399 710906543 279529790 855417048 892742391 468577992 401260259 318597606 781995949 802024509 758463649 947400008 46012067 963172368 702197857 353030264 922308556 119037399 209785539 769082055 171534609 976397884 688786329 370999768 964448463 804434300 220804714 619525666 814287959 944489449 989020912 986337649 980481645 157570152 595775898 320411493 691928522 160410356 482515979 833421297 268458394 490358041 268062105 40266205 102000127 496445049 264213967 970093381 447014028 443917131 206239467 676248089 37465802 722578647 564082273 311478427 711953078 728887803 575318 365166563 905013057 639312297 984889125 176070750 713729231 658559334 68833246 16336971 522086841 146541005 15840962 47092797 560809675 594177290 803579080 280053148 743861702 858245472 193829148 398176547 403585503 478150052 908465562 490565987 259920958 807627711 458765143 252819775 168938624 134949167 582194457 24463982 165532470 595132294 10599898 471006717 77870692 538904810 782302537 484689098 365539843 228128404 575751240 397449226 606682751 180932945 482035567 83300291 931265337 76997124 669552008 559058259 597651718 16931362 192239633 473818087 670907054 280752180 304443837 454660869 996191598 852989528 711860979 907944195 21776246 795855041 711566413 976604045 612808812 295198259 914959643 666765347 103360488 976642184 949089246 734175896 304611830 471142701 891891917 454453652 851538839 422139301 984517715 650935059 818297151 212179461 940679566 156814565 766804312 57246070 452426450 250215724 819532990 380811447 55564836 392372448 657831234 91450009 685395904 486279758 538063400 594195073 146053268 22123413 420598952 836609769 236793538 111761192 693272176 16042974 586397218 126098511 654131744 531660675 895090365 973075877 387726284 288974990 33586515 564665243 319378814 351602374 405341654 681202420 424330162 792693643 676620269 39144263 304939993 674812494 582973298 281209729 808151254 720646420 661968628 148102240 585867140 482041079 987300918 763826936 465813293 847508133 583851182 443388722 653001748 730933471 952896007 818879048 887784429 272543995 686599327 892787019 172689504 320620387 727741962 691959709 222381449 965997588 763245453 96515959 817048187 253733152 791060644 225096292 378580408 710582060 346391932 887736260 122469306 840228339 552613241 109091147 464610158 204966593 180021682 233412991 121948340 138539768 529837936 639795773 827732704 509764750 531532979 21117748 303949116 613122189 202853549 613124712 51425668 39476627 77475908 439633073 894413416 782057040 382131348 329872441 282937357 894658570 271467371 840203522 268918413 296921371 117145548 146307934 9702002 886896498 407736429 845392501 410520895 562102542 593333816 803707074 795897319 877012615 389699277 439901846 776199508 596969349 242116863 442227860 926449889 980038982 740602707 122468915 49636064 796459292 708984964 788710976 132977430 226374381 232636929 163228505 487654202 960867762 423188077 290905202 219699577 916870648 475386399 829633876 749896437 697502818 711749024 308998937 898754625 855450148 692401711 189032626 618684391 953968522 623452224 155920225 435158754 110965871 787527160 136477503 910214948 123503302 468173235 993351607 30905873 814873877 391046783 213691401 157262082 153411317 319779998 58866632 283871684 174956435 771262984 1827676 358243606 145834034 579855590 552596097 551335727 415284903 494996504 110437575 88667701 946671068 310246833 316280848 687846086 903732813 188420469 894748436 50785395 570129550 839360354 572248032 750400064 908487107 37077028 664580178 446067494 188538918 433944479 354104991 318760082 719085444 107129193 559180238 63718627 307107776 299650892 789740091 72079855 585477967 266782665 794952213 173373310 823752635 443917456 568938463 369076174 336902689 687501578 3597555 300812814 101650354 845222607 996323322 836291299 92783669 978450992 980793717 494254309 192710275 969340590 577472568 291071779 505325322 802390912 117598697 482131867 562014283 420435986 110512005 522947011 592298845 904444032 925702620 16609539 627039335 813703199 837807120 552875320 31735081 699054581 508106778 755193651 757297012 109363004 158230853 33858872 83699117 494178275 986829489 751751552 878879567 611594509 433272785 787815607 611339622 802025871 453908717 141006462 406368532 893921910 776093601 113858026 964741647 283324287 786294108 89590275 415511841 219510686 213691362 397687366 601422503 276367736 353684427 443193636 407605011 307208168 517448962 861842049 470334314 361419390 447140678 75998773 911957959 92855291 668875436 420056206 900307414 786981078 463205403 402947789 396649306 315884474 485119438 938253220 748395175 260324869 702103510 72814014 578800424 50779723 159565974 587651127 962669018 573584594 250159429 79345440 119809487 358089235 955814511 560872445 869326509 819972927 657924725 110502982 8547628 176960184 341001736 372511209 639385500 636777107 844718770 468578758 875886172 764666141 19081037 772534834 984773220 548767059 164628617 297751413 981354940 784008552 8697707 114034252 183863811 834224963 870006728 491646567 191503081 331393278 471881934 843342572 421502133 374969192 508342140 116256498 595865279 888352900 881051941 373138951 378761207 479034376 995899890 126065323 293112669 489047519 574956380 527202515 931209862 713758376 437586613 793530471 753788958 528480820 675506592 648107971 807203936 402300427 491902101 747258426 625104288 909510632 679731039 425747598 171306178 540817977 513115549 740777338 272720831 908820640 710584644 587410984 740326951 328046708 542518043 897769659 319736730 1046337 968916285 634724039 999963214 220898627 581228443 722598868 429518220 202597359 327531640 165306334 626071603 597243499 843109099 286355928 415812404 732671505 286686560 698719780 133807636 552904944 1784343 159557404 183130477 574709835 736291748 226655117 416969069 4146456 907034477 210385207 749271637 73819265 205175343 61985614 902795515 925177447 308215418 693756668 845177672 123904986 282186544 657370076 863439035 988358050 274222602 567852161 177325285 367474873 744881683 514554605 594294763 822597327 387525163 560679706 36484871 399305413 936857989 534212469 19988231 971729202 454860329 762129245 42466509 845005025 490172275 713225641 289971661 317625169 428543122 337017631 481229970 451775796 598891274 165952254 63724857 126030576 176427314 337928053 709698548 167231777 239078071 812056105 434983816 334391061 742371095 835530931 72603087 20338510 771457575 498334496 815053367 913943556 47667342 702534767 113445442 184021409 149727815 705819926 780360196 166966083 579775779 931191166 474468008 71784253 615470405 290792066 734604011 241309078 65244068 820502516 414449055 409819272 229156492 649322265 474397226 979793154 873493533 78481704 360917764 806718759 412900555 917286862 413853757 205839565 718709212 383482284 364737524 280788991 499507181 385744600 585368801 7009660 537290094 865151832 632023756 163141429 790062881 482136490 226813715 565542610 468724895 176175423 162519336 22456366 316813523 702948091 574420241 934886871 390446204 437886391 725746151 341749647 770164911 627753151 914093143 734317773 296041300 100306517 261914404 733123901 696787876 951668268 273585059 973236028 929446577 164498925 523704893 268966493 77233118 469967285 59288816 176690662 796066147 348022421 519855055 520994131 174016714 781672721 79714173 449468626 395482485 861022626 765570998 539961286 556736790 250870580 173544903 595448645 779862068 378535848 400252689 99310234 411471021 255281747 74756490 240479171 682513454 737692798 137771579 477756403 836158141 220785124 398559171 868227090 390609712 394895671 459601106 339689272 574507443 284912282 499644591 919101749 526698566 704350760 882865587 659389197 24200509 559832684 577638348 930371956 328483774 307946215 803986171 427190614 641697862 281672334 685101526 174061650 182054693 353450057 301379079 593692473 430909693 531642741 164232906 130129556 913075527 241702499 93260659 678609692 307193038 696825047 582818278 860147776 227741233 168423049 168694557 783283362 803395173 100282791 83936678 487048858 141255473 690101586 802554914 61035698 750624689 623053852 386282440 902157864 720866516 85443728 51931359 794452847 858737118 433145770 219451719 353420974 810653415 539375963 488332529 604718143 821685081 90033415 43313250 321089329 75374197 294107654 763657525 419308999 130029519 89105446 162060950 740584439 565657038 788498471 964981191 844922348 82588205 580707902 463864478 908626565 71937149 821774483 148520965 739760595 254833313 571984322 115129465 501128607 934331728 964417886 183449740 499756513 113071766 583537770 731619172 501722954 495402579 922042334 830474553 279235515 295355066 89046824 294928858 286542028 628902612 619824296 76153641 365894726 883276027 272950322 318757274 873227945 806222175 793136528 681897657 564833703 466390660 834473214 800433057 96805031 787449794 697423788 285921157 90533187 322267076 997687872 704655402 601660874 934470922 763286353 745604715 3779519 275821159 738181101 625217716 569895000 270676867 749291028 196845448 391438591 362108761 526458170 499709436 240355285 709835962 182323913 206587961 964832298 576948937 704982684 668013565 316984070 434981246 569870214 463212827 57094564 705136163 476902857 446419446 783311857 701629913 514542495 992884746 508127505 959577108 529084853 996829796 583852507 98909467 52830123 23837733 392546648 972767881 135485589 14201090 160174408 262114255 928669053 660894151 596867740 490995375 738229214 718854351 908905469 895804354 271773227 149562510 552911940 478103796 988874310 345057800 989637888 728562691 93615113 969183063 30365939 721900291 208072129 31002664 49546901 248597212 605817005 245524030 337031312 384580554 532651395 101235182 785601602 328190941 475860716 848208034 645311550 887959927 197610499 542112086 797590219 106212304 282455259 847491358 742256739 887314805 482993910 951171998 262973494 703106245 978803150 477629840 717744293 210000499 884600143 948122434 822904775 677805063 711613531 122573077 296943079 782629469 397349189 287932927 574687747 62189092 677304918 118394890 208741455 770664031 939067980 525154003 809520304 403180776 139962070 879163916 757566274 279300840 169904409 281045498 833648851 113900897 245794350 684520439 690168165 403828644 740534689 282589425 75840688 204851163 9944564 547059689 786628765 361288576 328041242 361776246 572533196 589253604 669585148 608366911 969804303 331331241 257910775 564657796 273688813 198936136 545673564 253733526 419700768 860110477 353327599 730274395 797041175 787951894 426196585 171734987 116361845 77294039 915384823 296072309 828770448 660589976 914886840 919601147 81207794 217280117 824582722 236789905 857389788 103674461 390971421 678207874 442963134 19174293 428002886 814750123 951375040 616978738 703629742 323186174 320951357 571043746 411635385 825604609 737905474 826205988 969560512 313364044 547340564 562599499 268907919 447114511 724752039 880408191 894695911 338649225 253637927 118595707 5704701 671486866 669820019 210762960 201470713 776945170 138778525 161146465 144546937 228781447 576323435 877709029 21101323 309529476 525715161 12588393 243713206 839695404 938614677 536115403 676782450 834597051 17561218 222002752 452238763 579330046 93187638 21313998 92676802 270643925 768576891 583447763 597363596 94380216 302003153 321448572 141632721 659022383 211176939 159689807 181382094 428587865 619712558 415312546 326792371 595760230 788183349 395469601 919412518 553500701 780825679 121955148 617381567 76262487 448303615 997018358 715683722 924592258 204826235 304154823 643162248 746218014 714380334 873361595 772853806 622921027 797247031 582583458 675229924 679718682 268018920 803456158 305591687 244759648 366041671 761436071 577436135 733027814 888139920 949079562 742462282 849325331 911542960 457099750 432741607 24652896 468916940 180284334 754791532 488287195 73637048 700101802 793446009 629942181 531643521 967572853 133625635 353302644 939329252 662022784 475620466 556366866 72594388 775085710 43874018 600966107 151429880 398737718 150425574 947622211 923077674 147912549 304961632 829044814 378437113 464310233 998203691 642342422 980488232 894855078 97537938 217308489 597333037 3986101 137801685 515537065 896005043 255127104 248405419 894017930 762482968 613539160 982533819 229606487 703385071 976991071 312726818 645665037 261139840 514401934 630243312 300893117 94732611 490276976 90517930 613256975 80331625 594549861 7099594 50767546 756549459 471065632 166416954 453094413 10937368 219790890 715315165 237246057 791363844 801231965 748492551 251623365 430777875 867998313 113118463 58768169 127523962 579362386 469241220 600276275 508033311 702440176 491575621 132973205 460973340 948901485 582966376 437794452 198995008 415760075 596693252 687200651 116706189 560061020 189282726 257516390 620254139 323957320 228840400 373676584 87171508 42369290 713236597 828588645 97300246 677663987 338753151 18764232 274079412 215790246 550802762 730603919 68336405 423744922 580230950 677951754 672627444 614966940 845407192 728261663 878317502 85651018 843342105 83290569 63052311 546811800 677531414 258793108 60502613 981995087 448343278 979712291 917160707 323513737 798473015 378969771 798596960 751535159 111671418 820157813 422507486 170469787 147522482 705997663 361087651 31977422 16793297 91507292 164056075 304480827 943474492 377035504 872123684 688305698 92852298 404988084 348801072 978192662 497230280 538693848 471485735 15314815 9247864 925548188 801382962 518817049 303819405 367503318 814918193 50970483 46326832 275378543 92166966 579848818 456043519 354754534 774830344 469843147 157515144 376111563 656771489 191765132 739506643 218210885 217323952 685263251 204974549 861691277 873515800 80551957 495536382 702623601 49685359 798770457 954979244 58250194 9874048 702619387 54964661 709259046 59079881 299383273 775664866 305199862 229195262 780119145 270970222 879562337 660652420 310042577 257230475 474052248 424439543 260062414 651452637 828258656 237565604 211452894 390228221 362775443 887308304 193815510 388943863 927113631 498816111 738035804 352427980 495601157 200198445 460990573 486028273 42255835 545779305 233120473 843546062 409508683 21595509 737554626 650316609 406806034 189039960 39974945 586016024 968465921 675373900 270661185 890246554 417061760 146475328 788105794 533343999 745362950 972104278 872965527 38383091 955478690 67301222 555061384 598271511 413746293 376187258 322001073 642972800 335446838 371898448 955389313 144927286 997369772 997240539 317055676 371227830 207149112 674035650 813746938 341882481 910013256 558722528 599466534 920734027 88346597 164902082 642789887 635085597 664949286 124718380 157338266 292278835 79030202 188352404 762438366 883189198 339532899 733971622 93489414 649802402 219193973 30051262 718325027 4179290 264848219 572612465 526592920 20557072 530150419 248716804 307229084 787017685 733045165 87188467 174493115 662895407 425207759 565857388 561520725 22100629 169973556 488341457 7740446 907936245 403599912 117924410 753923228 900717615 619087630 797577201 321952941 486917016 822830298 668791284 771335934 544471672 193955224 140262518 231968404 145075596 484689123 755187550 984683847 311727236 678237806 727125702 563101250 258283654 171148927 221405565 539914885 141568169 347185263 535650694 795399011 543723131 55811371 364180631 461683460 485309564 755345334 454483611 636340452 877920417 777028517 592053296 687916626 336443090 655528865 969757482 715808498 972654444 524387305 465245966 914039100 244078015 878083789 182060952 500043515 25988240 275381044 726550837 935406030 987070105 860063511 324841353 639042474 570495749 519512579 685805035 63870294 434781172 510862747 180090852 141552877 527747837 490048532 858630068 784345696 402709927 93630648 643446477 590888946 662509550 276201572 79449174 817495738 544443589 799109129 117469609 764086564 628594318 259313966 782208725 92172144 544044451 339886700 264252700 28530738 78844113 121951729 356661622 796745424 585549784 350788606 749691661 101505031 699443692 319431017 870485951 726403175 111795767 587756060 417180832 741460690 985713237 847482772 723165813 187793665 35757270 828427106 929234489 430672383 824176575 850282926 948810652 349633708 714594057 789471663 691986815 287578683 710099745 419917876 359038585 80737972 389821798 765329438 717235029 299487603 377861295 639756003 374767506 462687655 471582146 608027405 657587169 790358228 941202910 938990777 400895659 939298129 877518130 735537177 658835081 249602763 601513315 490251762 723763914 331743424 127816202 668731935 750494704 97350917 964573492 260788236 932730931 714016833 959198176 983586107 232739836 699521647 335452805 354492867 870741611 697540960 473973641 716159692 491729362 234370359 280524235 731344660 412931640 898179819 906004250 608073069 866360280 951927496 172820667 198229308 656300959 675580142 75155431 18512636 966814129 743164881 282341450 400371385 453735396 398068919 847957638 85405334 535234115 21853757 50709678 966771527 666033036 432994515 893930187 87444631 964477363 323807547 329935194 110122980 658430045 798176526 443028940 515178142 821082982 462822711 892946181 338675915 948596571 305575541 981464030 231599494 586929153 739007965 905266084 306644860 263237324 681493334 672421014 199709549 105806184 525433884 330748522 617902257 105199668 246761790 278293704 650401712 937947330 990890016 44212686 594490473 626944089 707508474 967272586 916583660 278956659 253668182 947478915 544791008 290712895 387166358 183699249 85556478 261449248 549696107 763737216 638399379 292008492 325292383 832475986 246953218 645924525 902478669 633791738 58111808 799814052 665746915 729757377 533446998 174442561 119798567 338857060 709028835 997967724 83385839 836560532 776719768 473738816 484129383 337333109 766823866 463222922 221700751 797873439 634858147 509242702 654076091 254340128 345450048 468784451 975799313 807354361 853029524 279309650 76012302 490176924 824262196 547008282 117437442 435918837 151204554 271157615 290055567 599153246 567688083 476700887 893412654 515103528 889440736 89419788 121025962 991986713 360167321 500261500 968388002 922879721 528150453 803524300 812816907 855730116 679975619 133160785 492311724 486673355 730482020 331690133 220072097 897759122 160878798 830421976 698415321 908503972 29608267 866636172 821517464 997312250 278756024 678016472 517338613 25796488 226232070 65451799 643234909 778165937 157769405 173150806 801033486 876837325 590352756 695332313 542296477 776139434 482624090 672041366 568185969 275799560 543590576 466397112 961289541 331348508 243058253 903553309 571966378 647100174 458047001 926794713 553907074 426660731 440824978 148119985 880513415 987045619 655938122 455585953 661621698 803497084 529607270 113668439 64154644 736554765 890140449 359389621 61199536 879282196 759685703 460710739 773160095 822779889 253431738 774150650 409639995 101961336 847718385 460032042 315981748 388924275 629015668 666957205 450108302 723266334 741806177 997851042 322499873 425424553 973901034 667267563 759510808 160968890 704877013 56932543 453816818 144227816 456727035 138190240 5144708 982667073 898402249 933448646 741169270 723296965 113125826 610674331 550437057 8912872 210742522 671781437 54219831 176595988 129973148 170503680 356116475 656479525 59894118 175008489 630493188 191821803 270368808 275284019 746853279 915909803 356012105 409999310 396413930 695653279 32797506 747704027 798410842 837729137 503843360 517070897 296134454 857116612 599819270 433690844 644477465 526730667 593675433 10540696 351965812 63160368 969401554 422990426 794746377 363566799 257513184 87107784 782291825 865094136 725538115 887246012 455508120 522344336 700333826 249488837 861615419 107284336 430933046 346007717 837375345 703527909 705213069 969397716 290583583 133713454 387337160 906884091 934584706 838693122 706701373 450833018 465404330 450727687 887288661 740385252 291416313 496020828 347672079 388325502 600396455 38052880 758310267 895476931 923500865 624075944 85576000 926333922 306980646 740011677 501677592 99347006 98461961 871624667 776705614 238366701 171012722 198113604 169092679 157504314 316620349 398544171 158735606 849790244 551828249 635208666 776189541 32764892 255840777 415578636 743164979 928856395 733595879 99993971 644477457 139411338 901362908 145330995 538180 912156519 902477546 831608933 769866790 411054823 657216610 135226517 848739493 451306942 381453678 482031685 756381891 319015385 201795976 607306088 680951316 706916821 950643713 348924391 973014339 97870213 198741627 433922592 451545741 215258223 867861871 613681506 688073284 296239695 444949160 148193906 615421261 833663892 183142342 99460616 772977059 921779678 239015613 8552275 345931474 507704454 999631443 480066161 625907836 204790550 785150629 98102520 792891608 708720588 62460322 810923120 998270766 309044764 209500559 138859735 855517788 140156715 487395713 403389211 397861204 298047573 247933414 97095075 362833307 110536103 134399229 822645447 917106636 308756581 359708505 775366995 765227027 779534214 160113762 269647624 267853491 139701811 399887571 450628891 959719040 217610316 50705725 720325813 849358182 510156002 576910467 144123249 803354336 833073854 619105372 700181472 353173633 723966681 438596053 722271240 813762671 514366690 829657036 941208033 505294306 146836411 6487414 380241879 795693482 159280124 769415385 433520971 47955111 669966959 420975443 725753618 418614862 881916562 35265041 181000692 819644203 192546072 551251097 627053358 353136985 819780200 380644161 316433137 322541836 151036701 597770165 508424416 42563335 184983172 150752629 572408470 403974438 116315937 332313172 535834654 46942422 288443178 405490426 343472249 736950680 59101450 472754531 352326172 966633346 674940896 484065118 794943855 875224509 370371069 526355216 760836943 733014792 823415146 633890670 485599116 3005491 241732191 271206086 958590828 433019045 476823501 530101559 504996390 555789015 160440790 342809907 898572648 167416535 602548815 132871684 618518482 716441286 427412805 479268421 309571449 677140826 835208053 187061861 966274149 620729949 837385938 411200808 698405139 531659564 333285634 12961829 112049395 73352504 279831522 391557704 592900331 253942921 268717566 766657618 350584274 361619510 277144857 866076500 822220022 984383726 789232299 50843448 13632151 549009778 728814174 241265464 679147625 781060888 775354001 422766181 430905366 986116682 526777045 331115553 830828986 58046213 881441906 683134117 95331941 939453787 273006819 386706812 581840540 399851505 239910997 698154502 177120473 837560449 246905901 153102838 173203462 941292121 441875327 45316053 448283654 793598683 699905431 716107645 239112237 350174715 781637748 626719902 640375234 275939012 658874184 180744508 364164228 551490003 596413178 508055598 104552226 327729626 393176739 925336481 995681730 357047839 881866772 386460564 891965051 622149882 255159887 498387034 693695962 398051419 104613386 600333595 709271393 230953537 561401392 540545106 919576579 462789444 753504351 984037456 760328874 217384204 120565098 199612344 874320562 556489943 149552088 244958721 104212587 764136951 434934883 226831863 357906842 758401106 636596347 540042299 198949880 229746400 358328001 291087294 496987058 993072689 574652812 650870858 674196455 433741540 122981223 300080889 186057518 26237489 323706257 556767932 115218957 144225376 38135931 595000021 992979331 783571792 489258574 305706845 152692607 998310641 335736674 451015103 953382246 309646794 80798920 449540923 966391441 406066548 957994178 783875940 895746252 14346012 602602821 689927330 835929817 92029957 324429438 101453489 671988459 794308100 451135818 561887520 201852203 674573826 261239740 21990867 3132983 273517182 136518555 137014146 537605022 958893576 448433377 698015800 618009189 815102919 733073981 480144852 510750597 811209204 281995154 965728395 18516586 866034269 615402102 304649572 704449909 209490659 39492788 373190331 406302843 222885372 598186186 304616638 888830277 585688882 271374444 678171123 924524046 811989921 745283839 462353840 524568072 829990013 332325406 788489378 356924887 307940234 407385625 582037831 428050452 582175650 972189809 560354419 930551755 878235955 26167390 369903567 991153405 811830462 973747017 611934293 460120863 877863257 526666578 279555798 265290138 245583662 330213835 431469172 824761417 316429818 127144378 206923560 353362429 183352207 36240475 903130173 982904572 26190418 572552092 973184723 167365502 240064957 131382944 238256221 287348271 796173534 476258365 193913635 777483952 294245079 987592061 872966849 485250582 31967580 930417697 374869158 825281897 968696632 548372761 625914006 74084391 344069832 831290125 139074857 186154686 540214398 362917079 462924873 321484565 613812575 452919303 348787128 363302148 576181126 101507934 206600584 55074007 853291167 181277523 671164577 812834767 25295468 953448593 192947518 901101217 481230148 408083575 979445616 336091125 762046607 254277527 805434266 491672808 553257803 700372023 24855795 473049482 381468810 538047187 53088775 412185441 329910258 59744409 125383990 64812517 261248571 474399211 309191476 602785537 805188533 623870689 399420807 707278233 363243199 140511684 759243533 861944318 857387601 808291220 70477939 588450427 601070195 46980739 117082814 136118732 802914499 29854328 616241094 765632930 66225396 715400077 189727414 979982624 811112777 486801554 379440782 601257313 870718238 170967431 173138081 744937456 64477024 137454630 806402327 922450765 565438223 664894550 261873004 784870767 44834243 733611193 826205423 848771133 515933221 445823263 732336964 540608532 78147697 728873233 834294499 263900228 6793978 888998983 207621526 87265171 471205542 730263858 781419775 581642424 338214766 846974323 738474768 827574497 271927520 45234274 447292049 941687854 49913501 520669064 439761309 352315955 166421211 280739621 493840933 730478202 151791331 197546155 919204459 863751935 104329620 874591552 627237769 832881842 396830687 70138944 627367400 198253560 932392777 605876153 395170249 271669547 132092012 466626286 218934720 910039829 538893173 839890133 26857779 190999929 124284584 340039833 401939167 153608586 732555480 244353560 282217812 485954674 241065967 141085797 68521332 545373645 578222444 738377287 689320696 804755499 995836640 603603641 28098795 186796945 880182384 28610408 640618540 671919608 168653654 928001336 433006065 792421325 248034400 406061248 395967039 996199536 282608239 858550985 133128819 638675125 360651514 632234706 334270908 932103526 957609608 470384015 811247006 977367998 532277561 774324582 223373936 932207599 798558526 69297904 848793567 467068317 210225501 533948798 649954153 320031842 127907694 783373202 258236643 721804360 58632928 275347809 584253172 951600210 94569269 831028568 910458263 269689075 909167233 524449428 779970717 13158548 334754799 669092200 969446953 737993747 199997500 35915739 635578162 158912831 613391930 189905447 112758788 294822749 872657231 662980411 48944319 149235110 432177139 222870330 148184534 109687750 349972021 794567162 251884690 58519135 556566071 926434694 119077773 349133188 728244398 297405085 428900151 125767486 719514467 537159984 564514901 64164875 335933364 410688744 1543292 62795098 532330771 995856285 932463770 963482640 739031942 164616160 803019630 655403269 487426598 300381554 11851275 158402440 780433824 814922699 91626585 194011095 106539703 889069204 744189332 156385704 857009343 99190829 693027531 957188259 279502884 806471208 61616482 690743014 150955745 650047436 62070161 448144256 524433673 593785491 129471202 770645750 691923266 79692972 559903415 770649536 536230725 632791929 104546497 693006541 830914656 605962770 466504074 362962939 339935732 158038465 495806189 51167904 395336694 383664260 409444504 744982020 573740402 737785231 909100177 926938596 66418436 879314375 229456302 112464113 190196573 226946631 134272539 143374159 131502020 672322271 459546072 45444886 708687506 359540880 858500409 853094101 999046069 649303569 100805988 263230986 959143214 364094541 486676694 245254059 976535443 789832419 457627615 180599456 869161101 230791333 448190753 566399558 301122395 168654873 107802133 543143149 215820110 562808827 621282181 226269275 195297355 775822777 606915603 806635592 612051788 108205558 403445937 640266976 712005343 16880391 963007783 308158276 465355685 357663097 411270801 5954057 727540948 451767433 878649822 103240119 624939190 721155242 501220946 833451339 353725736 386917891 803940868 95874229 151683100 618790126 94123617 935964507 364809751 478809723 252214439 730045076 790207667 738925802 36873835 813913646 732238110 136050741 172795412 75107561 366826138 82609284 169476957 951480570 563238139 427251894 235132375 319973001 925601068 845244127 111999844 697225779 810247082 8781508 193447613 185743752 222448391 945300577 288921070 343104910 550592105 875167843 624027349 924063548 217785864 914097839 399939494 683940352 709024179 887941337 492617577 227943482 201846604 68557998 774722171 341797311 756170055 243915946 142028041 378542678 390480175 282946178 128906648 344570942 277211170 946886556 756113792 984789670 185370448 775646610 277217644 583121972 163155071 884820659 103513051 320874367 281787018 738245250 822075810 392514453 928875485 960979509 745697384 602814582 971174139 218181431 953568041 637321110 339933945 801212838 17056436 591459935 190738432 672173782 715681837 168467629 3257806 770553804 877220235 209050448 984632885 429613507 906924571 13154957 63368091 65461931 393189627 851040926 834001273 992962469 678275488 509738029 838482141 779915144 301559377 14031069 971484391 756899167 73412777 569230785 890391375 918062313 379784729 706379235 969365214 980746520 598883427 584727231 527864304 402350226 988523040 356349637 670527225 973470259 30881595 612725210 113339132 302276489 346450804 89917399 402208789 491475287 702071519 837542153 344374769 455311890 320197218 543816879 122356305 519103079 941538362 225726336 717562763 519249331 872929398 763257890 962752777 742087817 684119419 457587124 142667207 631154480 312730750 966675013 458717913 907975203 64410637 275337562 527224291 734150799 780512903 335832172 144689567 93932248 463942815 109914472 830288987 6030100 111958493 280403757 285106296 362149774 54006045 99743249 208152300 287621445 422237965 9992797 516655041 506942058 403539123 565088972 620018836 480617190 621538278 677081360 428881686 309242577 431402960 933769293 201568143 599162108 516545394 318257052 124688726 111673192 554133536 890184330 697568090 395196365 221425153 601758102 305349788 478811668 13257872 415952054 772183218 450966237 371382558 260642258 522312262 153499130 261269325 479041352 739699093 669505778 174149014 96105063 594516721 185629567 208351172 118019060 521367872 345796112 237806967 530287784 540311674 357784648 115285667 913018287 102623278 511946109 673706510 967901994 185104894 225234746 99092949 219142830 773951006 334173629 357418471 494388163 301805017 239076474 461697160 827315303 152152076 451988630 525016784 967739784 360841641 624628076 969957674 369537933 440635446 408527116 79040469 926269134 64379467 900562615 821288294 586702871 482273304 376718180 736238916 881052970 241958364 203812414 73739819 395713337 885711471 96405284 221506730 569596272 349690297 760979240 930361765 582366057 270961464 823682833 793486547 307679669 800700031 724623321 508481857 814241370 222184369 137660207 649415117 444688720 663639562 299962357 279749036 303507715 165562454 209475779 381099236 257335508 415849336 836846178 904082130 512275352 383510245 242586707 822614182 268995095 818834214 873058630 790987747 158722446 69809754 894633379 639974112 621521966 637003953 650788356 224094025 967223707 515179250 486926777 33493150 326481773 379431670 105876802 709850802 973600690 354354730 513877721 218254893 226633578 247747089 623263462 572756235 911570698 744004800 726340232 244709659 461459194 106279777 705317907 311948929 891921943 840273584 476806540 367169077 34985009 122748801 738293039 644771458 624838286 329018680 902656490 808146823 906666085 845905999 464868831 825684921 179642724 385957588 715852006 620114527 694715435 196091624 332957960 918487573 177163471 351865665 720293125 925013322 233666392 473759656 197075151 38626498 650619459 580223868 267543053 270128660 73425664 970117166 77261977 345715756 701044341 630023107 124964610 802784715 878419833 757027157 52615947 904591362 840864090 67429266 967862826 775901371 247640152 677229883 788051978 778306864 112751655 16764327 575292681 666260594 841266801 895392573 726155963 789580771 920520018 750114813 815484517 132483004 37316570 523954680 15504771 834125192 168307855 521413075 433649730 762555559 889784296 873804617 190743046 79050956 2782931 764358566 392481766 488097920 579202351 530093132 328103211 372631964 113468499 179711794 430427093 109626835 231023494 6302048 321376534 743720230 986840196 501096820 530182612 822675565 814902271 166329376 714854187 435473365 833077276 834859177 959481577 162801501 417258226 361135466 670194193 766270296 126480143 100048463 926437721 598608110 405882866 301892442 935155115 992229530 489869458 590333730 756149927 586704045 386983893 935249743 857570080 711858634 883560730 552428831 608242587 838989160 434533040 706028005 703604435 541032531 683737180 85401988 698396215 113002284 108203479 946284280 597198954 884758756 17516878 757747405 229437891 721937221 122983392 74040742 244576459 603836265 17596452 869047480 965807297 234193472 86716576 955274316 842054169 863526671 99545171 84841024 651561720 326395884 981874988 221800583 956506554 345915459 215348368 82583972 353972589 80231252 208222680 553705779 342286419 687953586 955809488 936698977 398056548 202542789 965723706 801187951 765627849 576903497 898613833 383788338 533633890 268885453 598802214 909271958 800957761 803596853 453364591 521543702 445236013 295870777 441185971 252405574 478839072 145419492 836347383 460240970 67204554 478550293 725201972 20320604 225964299 957583361 369362646 289053257 914338941 514770607 444836927 58196212 411439591 518795642 775164994 776035282 194708427 287359123 843110568 986277485 225088473 574480509 885894574 282391010 404348282 556888719 434162821 99627874 675345478 627738998 950152657 404238516 702181518 223140784 325499947 830373042 376735699 766496785 384753823 400017351 610355532 357898306 817697070 513855096 530052197 541761341 860333389 894776792 414269242 388206547 343475813 448037394 540168992 782460710 633119825 644723938 827330333 951801135 855121891 768545820 474531435 807558457 305511775 955079716 277880569 378444388 777894653 43714677 498737642 50459171 589738347 500595739 546009619 95854270 239491146 482924600 478696065 663965649 757066924 991417986 402662641 274674891 867947933 788242883 259686999 994891632 89527447 267956824 203552088 978302552 740007435 75616947 703627471 591137645 498717151 501545434 577434187 983160433 235737067 762808293 908120720 338729846 644605051 992042627 864518674 795908964 493162704 34974070 866333565 335277174 774633375 908043538 834436655 861383869 537236368 405763266 34078396 1211548 135792576 989030275 529948522 223258442 936836159 573881960 100800690 481214803 684310675 474672916 94541765 473328407 205442612 105313347 456455941 789263690 799522062 754562113 399355527 89003378 326478338 390656881 421399704 328199788 856717668 902929607 963324469 994015976 784029566 538820686 143733649 665396712 517678348 416906660 405600915 995715909 524857279 300693113 392137557 682318378 875722938 638932244 810556070 472061335 577979160 575573710 517406345 263963871 50637924 315922068 744862900 479306794 312132383 6448489 34893074 115422964 53645629 404640482 395565122 340457100 826314920 812581288 182417429 457840790 603368892 743086073 227240467 240705930 594069961 798434344 2863095 979514162 327871893 202295577 452431407 787499824 778734039 82392262 83977821 810100086 843321789 640128700 378701272 613104331 879301991 96563358 83371052 814093133 354965097 96356513 471234453 779368170 757746765 487879183 351711112 306302437 751825167 676258244 598378795 81256792 230217119 291897012 709195224 490003884 712159842 853116515 95966110 498131746 857747890 961324395 936566208 254699597 491599449 892000250 247082804 214440598 748623386 930700881 196655396 528100023 936611369 685033798 881797489 511865152 5015981 279674051 368603435 988585750 900792901 352853573 350967578 878926831 684786304 459221853 945523768 741323479 458401891 119977522 395130933 99870381 969812968 12034558 528706546 876378790 108577145 544909709 492216838 13850826 709449849 891669953 296404284 673793650 884415419 547046928 211726611 105415377 313664009 316833028 809641021 113648999 510029982 106888890 533919520 274755215 983076780 269118308 240244312 672719859 410684632 792408519 983735091 387404050 245054905 284368317 861659187 928937921 273530460 985071285 22480784 267913895 719190467 4837422 618114996 311726527 34216545 235520063 840477117 735678682 465155743 87736850 114035198 828834330 929662299 434745445 714672254 810222201 531379300 796995592 782640503 498216000 9007359 841161825 60593112 265636752 249449061 872574955 604255172 414115036 749320258 150471858 480605969 305031533 315691832 243405528 940109258 526597597 102423386 806901524 199682221 165013660 297957553 281951022 942875566 226104943 92745659 600208516 422963826 467137259 799471079 16992905 355261653 504017662 494405146 785591104 520324453 300806503 434792749 610382277 917774308 965538105 613773932 950150340 902720457 243545180 371901464 823764224 269898432 789739532 951255014 338838990 100257062 203970904 994962815 746376087 932458638 589501348 108679934 130434138 842880062 385002791 431251829 112528935 745036722 575940974 831774056 976677285 728933656 212857815 593196367 90277517 680344531 325005335 530884633 781118508 77018361 361545909 232864164 256471525 109320149 179662732 756959558 575822253 98666597 255632973 543255111 319117 136967132 671217403 235675236 189286180 550091042 380433005 748875854 85450274 139944271 560527567 899931177 780638414 300896819 650731041 859332622 919009665 762555602 2266295 989759113 4879913 743029216 302497207 780415771 136024263 425326665 272718750 357014713 252126193 450115500 831334587 938068043 787603793 103879386 513928115 150578990 79328292 829984348 488548347 698581939 13860283 665768683 835267681 998349213 271401981 322464758 144508292 928706215 821223395 746276895 406626903 88311036 78386171 264836542 998828194 435499453 466336487 19675484 9931137 873600895 483156443 49687610 40775651 862200522 21289250 610109640 592185612 364546203 830294168 35581230 34671379 823636706 642572849 678216134 527503717 867891461 984567410 605092255 126849344 429298268 350215923 385278204 526312505 268752562 955240675 951470547 261395639 173151434 440853379 275546703 278515829 829099224 82367146 904674127 12225284 183437572 906132799 8283876 654328902 503410667 345241027 554350295 123000564 370451741 406845125 933907232 159968538 387959712 850618731 123874416 309378710 30763115 941862895 655166120 665070492 710804204 248287264 88358752 370452276 143371651 774054877 46371937 806444474 235982341 103856030 351098411 192221534 956046394 163213035 62915184 514685602 853516382 554853602 851574423 65031903 177173924 290685109 817102906 75784384 706302126 131768874 735268264 168413892 241201174 905279513 366760548 371311552 321483497 783569650 878398372 308383067 657489703 654526260 823061202 695144081 646922308 563322359 631485455 806445617 873008042 291591523 680518827 663779167 947600181 197834039 7517102 823043602 714412469 532403523 772525651 937270679 796962160 732099054 365750919 263493900 395232413 81744048 97920366 710419942 335297513 773464217 474913247 460633708 678874358 578411721 997633251 405057593 229618392 585659638 741104186 549905086 600138390 119535593 242331349 762550717 954854831 930904065 455277917 48034255 958766226 642321326 795420331 683018975 844383524 778564599 499963982 45807277 392023358 119782133 466763528 833537357 101567789 452598869 905537873 794219941 978624561 326585818 510416851 696902642 921458942 657102297 691187692 661843523 741432893 854678460 328400431 801830653 516589836 803683456 417923811 358401365 828553082 598221110 319629954 229783513 17379596 697038213 594430012 687708392 587844411 819541030 877598322 679520565 656003060 904185191 105793339 983784520 541925910 47885225 653907682 846809340 605271543 660732898 149080165 600860674 941485024 231201820 270843384 210595933 87473804 139114996 652369792 593012709 957302189 882636572 688074521 815520708 407021671 181673945 529545617 661568251 113487315 713385349 519645418 199049950 758689662 479916814 733898459 759431572 393510375 66955126 449990480 485150360 568609028 565807697 946716390 480179515 280478398 319255626 802621808 691854623 670272880 853461918 640363637 935003837 519966828 359235743 470474159 216786400 126320758 917237298 114295181 213452328 853300807 699213393 3008946 661584777 519003915 234311818 549021044 132818633 809080547 461899391 322747485 853855237 143791972 576855652 577050798 613492524 163597335 622432644 745480151 355004034 61576951 530777789 767420160 128698143 30517494 590014719 974498180 385236334 383683192 943471568 823554416 542450094 825872853 887400395 897625097 894534772 888857051 232525596 454778947 935404327 160351307 677194758 477186890 271326339 228953176 953165149 171348221 84021527 643097387 893213452 135063150 942198727 28235873 48415377 279709795 355751498 178698891 881005948 522818008 131441069 700703149 351201780 876788347 134266574 544511935 262734641 13394735 955091681 844403503 204345347 353834121 734510063 397340509 521950538 621759318 895334738 315551006 788487803 915778835 40585787 595151674 973131298 647025780 10416684 777256686 397199450 897159134 434883966 603522155 29119318 803969004 730641373 742484309 843758556 605959661 50512070 862221636 101713349 684834916 624585232 352616006 733892223 402007943 946439264 152226651 426984331 165710785 147265971 271242488 225527551 924154929 777649624 821382021 425335300 928246057 287988467 106013663 971298137 755276463 528699388 28001750 309104590 70456575 851822398 59976880 26029258 959355142 717548248 761829285 430508742 381442793 564807999 507804769 946754512 490467452 182186426 877851524 683822089 738516428 140265701 822651173 344717351 8238998 930468143 49736011 984271860 213348301 101922652 748628595 733071053 969431576 554031363 713579533 590674979 128373329 88153872 209241343 527196669 153917191 845495364 996990496 505528693 161672189 938013616 944409278 525845815 381729961 781165886 876262681 776201733 555671222 977843240 481958117 714345781 12379266 160132479 242113484 32479537 944858016 942923941 131178474 858779126 779764056 682667475 366171727 563197334 421913378 312080020 575744897 723956406 159488303 91436104 526479351 567856400 588808928 647594658 262459551 93026802 697430860 441344042 281447769 173743806 418985407 327860412 155311993 849686376 933012021 513521672 324377161 145786619 784727523 410350608 207975300 252626964 197422511 52687788 853927901 589480805 962118323 254580489 821731190 23542836 511429822 40181286 985867881 423846105 944207058 168695125 121299779 124928323 912116647 58479552 753126787 155479924 242662439 241160674 969384992 316907520 687463408 669662730 534649344 795164306 830450645 780245212 855529090 172890728 38274653 723556303 213313013 880758994 425567299 465257903 981383198 3037111 439027956 655972124 85664951 638247951 88937236 688853258 159468010 755182698 582640377 931127104 815324890 465830759 52088110 514943705 99435034 454030398 589290226 293657285 73488435 876861239 936618679 290448457 39946275 995738673 283836067 787868027 877854169 254962460 550427922 307689415 773512890 840629887 58670866 428052077 888950815 685156339 482090725 73294080 308071893 654095525 236513411 730038760 535101595 469253080 916961301 76340961 341564583 208491361 637107323 977530234 541057570 744487977 899402695 504659863 781245351 211641519 732028352 196279280 908393672 626250115 7962720 323554448 280633481 730314700 847817302 524389206 684971491 732575683 861939589 285476471 606114370 867028278 325915523 632371450 214836744 606766598 768707611 822133050 135715080 347999401 530154955 895148904 828041483 853630632 894713927 36236807 425309262 109358882 515382516 874392686 87155714 93513032 714227054 123432266 202903243 874465503 891513346 859807513 885327682 646638273 663761973 897131183 374670451 563908956 212450107 281431477 546415200 450565937 328472192 955010853 182227580 68521302 66199075 938003919 528714288 629129205 862137206 798663384 632301913 56772811 458336128 371718198 748478152 940893610 947722107 620768565 476326593 337215223 883030870 605547765 309140860 572199980 522639411 130374889 850837416 101785687 969017578 157103449 284818147 124396185 40250501 255065569 394928195 330781353 347512002 859140592 895121104 649917775 338093716 873067338 240061447 850124009 840695970 450381959 652339801 19750377 244114887 317675409 917181353 936998228 304994192 818713642 667670482 196761412 689775809 776307300 966909215 554685288 636324304 33644838 891320017 659157375 959098217 491365038 793074077 882211809 569256168 414965002 490886187 91174390 440253154 999429277 357070744 559791804 484068764 17623201 79314421 105015621 55005074 378610591 500063429 306024246 278769138 754775032 415313795 815556938 725708062 376324192 395898394 311874509 129309998 6326877 756344171 578086178 823460972 427096268 254987723 628716606 685238230 469392477 416260993 748874026 74610591 754129938 395175756 164840836 475540910 674720196 790576348 732414718 473319965 251815070 967050069 426982366 127035323 523240352 64897999 866342269 862398091 282926109 654297560 302207176 162538051 224614461 353647600 942330050 308260558 331176828 644099083 372198656 890781386 4605225 25197075 287893547 845470731 770292968 878132836 943546498 554214422 920353585 607347790 899499093 90645159 317863886 761069207 647325835 118621227 210633825 982327798 228579613 464740934 950104284 97893273 672219545 923414095 446983174 943151008 70808992 753436623 399487997 782231967 681260904 418640646 710581423 941905184 20418106 473139046 211805791 604488223 557789941 695687702 698026022 365766540 417484937 298378352 555405424 619999693 781809789 739121795 244213115 437655353 369867114 949452689 373469659 449655966 375353726 991551122 950955769 390373307 71170298 641203888 726259599 21862855 830310068 352993737 451107373 682412008 169109142 198324465 77128120 180740029 993735197 737206509 596412902 865728469 447480027 330067128 880569283 674846774 475970293 561375745 571298862 9244375 7874981 770235820 561127004 575901733 535503801 142149197 962276949 97951618 740138514 784367280 899147122 768671681 738041382 538948180 543276261 70640556 566563967 629477866 414496817 429476990 806511418 27534811 189799342 391588970 72861833 287177408 67002631 904643346 519276337 987907048 679204283 291052048 527641357 962752981 49119135 648418672 521619849 840232127 934345050 976325172 892893735 198581519 911870695 278858959 18627838 821660645 358180375 15735211 437622070 62841747 120152844 557664163 690607501 472715296 664446655 81614985 85282517 191975367 590859644 938151841 377933939 914419573 751970145 200389668 875210978 969505102 771822306 551233471 44906542 879221032 303986504 475290385 555376250 741401870 744229165 952119344 469469306 226710462 285860609 327663397 113887737 4076332 343072137 118564971 39103573 150676221 459134554 896409460 186764542 622812429 511054946 954982180 963292667 786787817 661674592 995234900 162331748 293878102 822649703 737226320 179200233 629911752 628675935 793299801 377130569 884508651 68643716 532998948 766543324 518287134 120865509 539729754 946197514 839628787 904759526 997145110 370347730 661616049 501044158 271280234 625343556 417812946 367592698 737071834 136029959 877080709 465324536 323176415 711342804 985751853 284663917 615315557 579290873 954433760 638784224 880397389 159247574 986994408 216136492 534917356 3987555 530813254 986530562 739240842 294528169 861815594 112538725 990548964 475615812 312962940 917096492 797228715 227838952 484003159 119059587 34096131 156995801 578280072 355495274 787990533 230223729 476035091 890358068 302518589 599208862 550743726 765282058 682781484 662210913 527361861 277876582 190859463 162266960 400532340 17010840 164961014 644434196 560871440 484857669 43281686 441747948 314878367 878464738 324054392 365728041 661286107 414868029 321487327 582767792 216012082 163247093 688555526 411265915 851660105 298484989 825242136 571418136 814751093 635192093 594350390 3677992 823027776 706282353 332652021 649262561 198124266 690119400 942260957 687953037 165538277 703777478 568869611 864198409 834168152 612905250 287630351 777302343 67278238 586976105 873890223 42208204 333608900 567580889 784879395 227245106 939895822 692967175 181373495 640679847 946196594 40990298 26977708 66805101 691968283 530159245 617040822 43823960 25613031 524422961 691117695 130012243 339154410 341784104 679017123 193259227 661609961 474328107 581305267 843572098 126090464 773893957 234239154 715928429 73305469 259085654 563683995 870249175 153695138 389957266 701858008 682888076 591125734 19967487 137443276 417166703 576262933 927182330 578811211 724842740 792700076 563329715 566774557 418015142 371049310 769088172 220843902 838037154 879899793 905420094 218816417 655681819 607653346 466187027 558080040 747969748 796938653 514270381 887828398 156923561 766421317 887483614 533399869 948520198 501550610 628698446 486580440 721624686 359508334 39512825 268436979 826306549 584538487 66159790 796944885 190015943 551439233 648734097 550787261 638319519 755150481 740424089 920381210 570719056 146397666 470195219 855463762 820783936 111305572 19055133 127212956 452236008 946721336 386032428 78986406 226731861 299046709 643970438 2428431 150628266 761228647 19610825 858984174 616594332 38545034 237492322 477212745 763565044 119688083 290116631 881869727 197241105 705830696 519968894 611691359 854001507 751516195 899752835 682068846 261402609 639224850 112871654 164041126 145518292 562315706 194031803 551385169 384253370 128389520 754849256 999737010 726286948 892460606 462012586 38500732 612930344 966471460 438261520 148906841 308498799 437626581 89863038 222407524 283241016 909840278 967692588 563787695 245429908 525095394 164008613 755896254 666125864 150336232 442829385 22660874 199429550 886765835 553945291 582993280 733454708 491947617 89763763 390771711 34700763 955675445 943561692 288814302 70639577 575448198 134755831 369442915 110726520 293651589 148684551 113761612 164235860 597036315 199631075 842346314 361034785 781893729 204404920 727338882 828328739 317098789 192753028 180337931 945066165 952528236 396950172 814598514 507977155 563162858 34657831 257095480 905151823 6459276 875795872 430677586 462478063 36716014 790645848 44938409 106264909 125753318 368470513 848950424 767948966 897048823 407824100 488223601 34271052 273054942 377943804 921518584 101321252 69761546 991645657 2164966 385665833 726533147 679131502 460926823 763493351 270721642 112900740 284544924 615965696 293077633 30115125 378908954 568367019 11293854 904855409 455809386 874158640 905005109 58595708 819917447 856683629 116743787 812394094 520525667 18557268 611397788 367566514 738960482 161348715 427676885 72817287 327220188 638004298 725067354 641741954 158219424 359807776 986836514 489777162 824911468 729471279 866906454 269045211 607703670 4431180 572423638 704138372 134130662 99718496 150101683 72797417 161272409 842977001 962840246 700990657 118659680 233054073 938333400 797565720 387385855 107116854 389978824 568312527 81839406 431031641 918486376 1552663 215231067 516941487 116998992 2759674 16368359 227953179 338087242 482977490 669553060 463095058 617646292 341236944 169136989 43784733 579146401 251563894 193075023 73446235 555151128 11474205 213831592 309435132 901432020 758000496 421585423 490645959 461384994 332401647 452696603 545762709 190328966 896563822 321608154 556492243 508356918 609646483 864733772 153679364 321151901 460631387 671099878 766665789 130515674 726657429 945384208 585355687 130214718 197766757 964541095 860462849 2913490 61330115 236931196 73887004 54992846 204088058 561690578 683143517 32774435 385132329 164438500 990326334 944049394 376460741 528020573 32590796 918343955 570083349 758900190 148893739 394647952 554927797 472989307 7394318 407667494 142919188 147257918 936110399 3624907 904943861 840544163 130875165 634049826 688654578 536185882 148107033 972290824 212764916 287273609 840468280 972379660 167593404 676865991 874022036 745013742 783378014 889149730 133104603 279339047 232970433 452062426 426962382 633241697 101209632 44600996 811672515 231661307 515015563 841809959 702619172 270929798 231939175 157407106 661652718 961094474 303649514 577287620 151398963 62237122 859927712 265135475 308785816 60591387 244282601 348976902 328072152 757907130 346909560 294696299 432161087 161270707 768135893 407821954 2335791 305514834 685100252 58902431 589167262 16090006 60814140 415483404 320961942 953338801 622182906 132990853 114573237 755573897 134162411 273062074 952476587 850950970 298631485 709309904 810571966 591694738 873806830 565351136 659582792 95269012 925230163 752010871 969270584 747334390 578941331 920613909 365221517 962863522 571268138 578299566 13038047 684960825 191235175 664480556 274707158 290553227 278226158 481815786 367383216 588804640 160576822 928411194 639856831 603487922 920753675 999264481 689981161 609222833 165617165 685060246 411494951 112688830 239748144 112547718 888257798 286052656 343985723 622098643 623561769 571461266 313567049 938432272 703237316 332424227 655070282 242475719 83313443 808644180 455005315 792455411 821744929 416374094 943755274 179498886 330459313 975694185 984456779 778076132 493852249 121728438 41192582 148470630 52253106 392465015 741869134 723890649 505840618 91093409 859358219 291558396 401877057 69969249 871645049 538578949 687146127 887021716 599448103 521405981 205559229 214973773 286069753 995927263 350557767 18903379 788619687 749167581 869132993 855586976 401938235 251564059 241177679 733139939 786664599 231220882 935721259 350956287 602389485 646106286 260591906 109934474 535596613 262253777 447536151 724163919 145769466 547089102 298007679 760870604 925267261 148256878 359063012 344949685 225083025 253187055 31033699 571465071 921288525 139977343 592066605 735304597 176479773 407588549 296064009 484618871 772373378 935891801 565723088 20664214 32627277 809351495 996651504 648296490 899783720 331855505 655241962 273075612 240166413 105753258 459593685 340067852 137047756 446967035 426725592 92210380 227889034 233993569 581918131 769796834 324551229 506226861 71504439 417806730 385129521 788514083 811045065 888956082 931064453 885182716 361025764 942007677 114415791 984967396 552330644 557361857 252793076 914503804 653719547 162492808 56591601 780051161 551499215 473587603 623048725 793838339 307439066 16110546 854744100 664246391 760927865 603689197 793882037 166504358 34925086 707892670 275594933 11500660 349376974 577497045 457862883 154835641 555003812 326851059 776559185 778280643 754881868 450232463 251219433 184448978 474363529 423246932 358218726 919290011 927017903 757589665 11588695 960694726 717975081 116137991 535848863 999853168 107483380 164131023 937720568 584781482 338447138 940538738 224824043 25460215 719722073 114885919 243280857 216519634 214920017 419089976 174090358 474055206 947344986 768025301 309440072 994901972 348540371 389209919 53179948 456046897 263817396 410281590 278825682 689743493 302509829 949499564 679605564 199125645 765275237 987049928 884291395 353900793 601584772 640284132 109158418 706663151 442675625 335960528 238441641 469762438 852647212 373756300 184752219 894613580 229463549 191262417 782024016 186481089 246074652 254385545 457905412 216599001 348162078 181425747 892069574 171414142 4864943 630596352 133082170 201714700 509419530 594110233 11018200 646368212 251449731 829916246 959528298 840309401 540260606 479564584 496716434 301439253 587667060 858344240 254673217 780996213 455467381 211548102 539637313 709145305 427292065 736680051 31399341 850527190 723568430 401932663 207391604 330277619 923735397 518962244 924506073 840205359 134858021 342034944 756784629 762786937 271098719 251171335 291822644 371459639 307965848 167210599 776057044 676450240 759298154 110278243 787282025 850533858 482520579 302218481 293663836 133104732 111666852 880252732 713007463 331559525 860992291 377861410 341183002 151635748 234194793 848456630 790005594 355203125 507614453 773877695 351967452 447969834 189508440 906628664 504774574 282052360 674593463 300670670 74163887 327370438 699211340 134198885 161320722 961986513 260388581 760885139 854548703 909952907 984675684 234793252 816980338 115864775 288345917 620501140 35069434 272951887 758500091 874976408 25176571 261739871 339159227 687996821 949765581 668950567 875112111 316562471 637585178 950907980 148140956 55702428 245881700 145676135 277380444 709722743 553925757 495196548 889472861 134381805 193084172 697682853 312661793 891081067 385303823 679047229 54146236 150261518 705832532 965765046 877052761 170898473 851536638 888461035 261766581 649614531 290843142 26612142 840323746 115063062 732544952 370902339 830973318 580188689 929738290 540719843 561005785 467604951 447653352 985038907 485419691 837136958 863559203 397648362 222505243 256222545 362166653 424662022 507837665 351952847 140999270 806954648 969042373 222640041 479593378 839991323 498325285 493957256 626169545 408055809 399950963 602475076 736375494 484869934 842047925 751641966 158427737 457042555 375527940 604038087 395701909 874988340 787306509 99777735 849024866 314773915 343156883 770142231 402045436 979582307 488055019 643552791 84471154 500367413 923886462 470804057 708507432 50741294 597539402 143326244 670604629 613362783 721422178 151992562 129198470 921915724 625547625 876850418 620986649 77136750 662558747 250275718 792272323 293281201 695651013 183462342 751235083 299069942 745152200 824537852 8020940 493885330 468709914 676161830 969771191 797860301 647264196 701644152 110283983 296981093 938932837 350978263 96091371 638567944 2781357 500268638 550491959 708119773 297790435 553936349 459171763 914073852 491630688 637666901 32792754 830583537 949000210 753612413 378602333 105293885 701143290 409462592 751434798 1609685 671938478 338407485 88076149 181728417 212198872 972730950 533919702 81321982 838332596 807138273 504822985 206905405 332501910 941002698 242165017 948622114 607555682 241841007 634190182 49974885 637779986 708020083 60107939 895543348 504045876 348542507 753256600 920429999 532021865 93151268 490039905 454293867 208162536 735860379 605886701 655586800 98744056 49606147 859946880 429213243 136339065 928069251 642531377 266915389 203118940 49716341 855889517 703133529 422192678 441451241 302467442 457327850 963578482 717322783 189066453 618100923 867538284 498895377 248265468 323829133 960398422 508315367 55581093 122403732 255314694 360244608 987356766 886571770 511997542 526381040 44806922 373902427 476146931 357087228 377679458 363402568 616302399 341632928 180597873 182639812 612631664 941497225 637632279 804179402 836429502 596327324 363767944 44753861 827721208 801269101 323826634 637831957 988357632 305743049 524666170 609289105 713518922 105005100 22507784 400262912 616649570 746883915 758790070 712262047 270448483 204366732 818346141 885764766 770333312 438151305 379462247 439905442 59518078 719774865 716385174 238857285 430765624 795010855 600704764 646865042 50467866 381440385 21213761 99410313 56005287 137137930 405283937 36590753 664219892 218497504 414364203 394778433 493752106 820704598 978166979 534938949 584252167 917351028 426986016 39430015 880753758 953415282 847553423 772273204 488515474 217663297 791218734 466028443 70916639 397901826 81203058 941056098 385587474 884525964 607084449 250573352 537778060 533403882 626883673 864152068 100178754 369263579 646880519 404508413 90843904 439787857 660786033 508850831 432904481 459686386 352447533 378608428 373424665 385402010 14653735 150339257 756344044 482087639 675223583 641381645 151861684 808252780 125753128 678447221 617842206 222629070 808610091 344105011 462305261 476799402 498203234 509592314 988712822 754989405 287653597 719207796 373652003 268392058 403595008 419386044 748374256 853526344 820118019 407446756 785009905 799408706 81792625 212193649 701146570 600323733 494783145 51795930 542968373 967920805 895967073 352965132 993793152 259489416 618071070 560126185 263015692 455191689 901318588 669280964 367454927 2974631 541300460 288469990 42120659 65194003 214641841 339308301 798397877 792632245 672430818 153450472 99751975 892097704 103963820 61490588 883781486 186636218 815563533 631590210 634387172 697752301 247785818 396608102 22525303 564154873 496354234 926451593 248221224 618120391 24413608 547427489 537754254 3705335 346075252 989570452 506143568 344114011 433931203 847369408 642663087 443493498 110329867 113313654 296242937 155844878 463325976 221906042 102551319 407636870 833893514 816535685 269853952 957246341 524434004 513909955 362850883 504190561 679498047 384789846 67300482 21464997 27653477 25806289 440339953 475685775 1674934 388222397 86086107 525040530 301455222 234871575 101218589 825219286 684512445 806759120 434421929 98553011 270100726 590089036 149558789 852761914 958008928 980271332 418282954 133106092 890488720 760600676 912976421 351557376 576234989 306172813 554696536 989603937 603616819 770216852 103019066 869807534 292969713 496319905 434734259 874559481 192599307 550436177 921715778 14699017 929327160 911894325 376190071 231143640 561275268 910144849 925913976 424950292 645719504 743570845 271375488 141627554 362562125 743390344 469016156 23614231 948894469 828022128 826705388 893664317 239128914 518319403 471594664 919118229 77138533 911126657 937267992 473797071 235880896 231694511 622176091 186337619 466102204 638563301 403596705 54161595 207081988 741649353 178508465 117730135 194142232 605690355 691041892 35431847 730292172 54468207 299152424 54316517 522446790 48385086 285760894 408239737 786237955 196639188 47977083 203034242 295314002 279558043 343824459 931965524 789095639 879190127 27627946 238712820 652106378 309919265 493237609 824727454 479096246 858817012 468492015 858582592 827146362 943605027 501055157 716257788 636733259 295317337 711151817 776916138 949385584 903227703 201716556 346879571 982864261 364170449 341781748 477457335 57148921 447914033 493058443 924558536 41993103 184543187 324375661 272108333 352758753 160017704 300204814 187303616 207381464 669250835 434716530 667473936 336849973 8233071 684694707 692056288 663265804 21314182 93830527 28812454 168993604 126574491 210548888 802202381 849932568 588196706 276737874 792770675 542501016 929173891 805506584 228090476 661748009 993294874 150419687 960874045 80489217 350442554 497874896 476354402 542631852 227145829 21916027 634899464 80067722 33632533 977392543 399299475 571161422 446475063 692172171 468932378 96839808 951832235 892626593 760845798 296374268 313023173 62895829 940559863 89012081 88880335 423238450 236584575 555923171 457242757 480400469 237941860 623230250 158382743 50800880 477273282 188632689 217872682 378387016 425090919 518885047 708680791 472936120 410810710 400668241 917119147 539720236 673064772 339883622 312670118 654365863 715403806 496677746 712139836 493962941 591190913 44971972 682343255 266041881 173168705 58167295 39426642 735600633 29049571 548153757 807363967 775039917 919456290 225274215 750641827 734974235 729515885 493378558 160629109 521625918 281730919 898470486 66463266 944753826 166817383 405997621 943864780 702389226 17548022 394968249 80611078 898457675 884249171 947894991 230937178 52963342 975071474 671595965 190121155 388984593 524178680 748203417 255803955 86500679 55853761 694725071 683243534 892066612 589597019 242164638 792545709 201798257 383434504 226290332 124366045 570916910 45495744 797504814 781631581 750449579 166377900 768896273 147012195 302365374 567623596 350270420 988952344 57500752 705556434 168011099 631725847 910394592 922322405 912692830 183512562 910465278 576653279 430471399 195059885 424295377 351274096 809799896 16204865 23050642 994754936 287425123 821257243 74643471 760913552 547301008 40368794 142713129 445965186 432724922 137713044 165159254 308041421 589579794 283740881 263823903 675139618 597629467 340269199 571041443 270263529 379349292 628997629 820420115 819436221 722437105 861139392 716794420 400801260 681365226 314588272 862056928 10258424 147294443 192300316 329504645 28707352 87333787 183341506 831549860 708122552 106286069 276215256 338486099 358328564 893951689 984517830 713408188 915901217 78271804 849880681 34987420 785226565 167733060 370967442 372706244 462321306 737463853 415622277 650760092 655904015 336596758 40164219 236145307 51051463 83704693 192379680 885270992 828154775 873596815 548690197 660216412 450758540 68803329 994166383 770554870 929702755 941564730 36552246 804972901 240325648 239257598 919745511 871682314 102214712 978011620 41979379 629189459 488861878 93434073 806233150 69358921 302195481 873925788 852190368 249657603 969084452 826907967 14882663 66617392 674365518 375732140 79374291 916405394 150797888 51949086 86021785 570263677 403779417 851823268 975157345 471789916 854812205 465848737 58228808 619270189 461981954 508802126 913982559 628716032 297280081 944113463 986326058 572360315 241537867 528458426 875350305 856983129 12186194 256153483 641296690 46220774 410497915 631228211 770817853 283809669 331992339 459501196 833580439 208132138 249610263 614599239 924173960 210755553 822555322 173819238 770108109 906641989 973433059 691138 736581142 263495945 283918508 259812998 116107657 603611251 525959908 327647922 430517309 353663452 338911630 774426521 110283200 444527665 221752928 485687651 984762514 486668917 647175493 779538316 431513256 703057981 140173019 781302627 611023338 560691762 943402742 808639628 415447732 600208019 530729243 329906046 88410713 791228848 47990534 551874054 873820571 474358896 55796517 78085571 250630453 564998348 698195738 644642471 962720849 7849553 630054460 511901564 347648786 880976546 363051543 139734109 101354764 34750964 849828071 899261240 970188231 676163473 565930017 198993491 1576767 298358358 12423403 630781636 200338535 375849780 506220703 642342648 565969313 751717810 897001804 86563117 410022215 671900777 694423093 733780983 29917734 257838471 566789200 539059391 993672702 503066445 230948551 324550207 253696515 135557265 351226235 658045703 456245599 385170237 242240380 2178556 847918509 157041870 637250962 835648211 621389184 464975061 490472119 253774490 435491034 596541818 536084635 862440496 320642485 329593844 41953311 915357384 184166014 944524050 992685530 714034794 688225428 623162293 845964951 669799538 134873806 472218451 732347349 347950095 75488754 358923382 470130246 812363973 131821887 523425595 273225296 360562924 881657572 751257556 324285583 435121198 876535430 551412486 106424401 807963149 201612734 777888940 374936088 972956763 432465561 270660658 571032092 803411903 337297430 6972186 920256711 560700983 175053483 462824315 568793399 12342161 231655105 718802045 353914303 621054448 773930291 843433182 89014886 256839757 459227091 873419632 804346214 235001076 185839590 914662296 973437870 105636867 95031971 610688465 837474145 407632878 695698359 565303847 571979861 585002494 229028803 124562621 679841429 346024653 606300892 748541511 164414175 810627787 353508107 601132688 100444455 674682044 814687947 968804598 617779474 236937272 842603918 609310953 282604156 923615274 694042168 316861551 331177459 653804370 55626658 666611875 848249145 57019075 228064536 582585394 706047941 61887589 373788380 572240348 118303555 491471220 963423393 206526201 740718608 880771839 645048848 279651825 764287935 595801194 968590150 204720835 744184726 273711596 102632788 900528511 227131665 45338898 697546430 41501900 221664350 799139130 116848637 352281699 385173216 921421849 612277245 630544273 308329901 446881846 76842655 326615481 694590992 693268332 857805624 369889488 376507911 961965932 188553489 945418720 475892421 405486648 290519013 117926277 406993713 853487786 59485285 205761651 904722534 215508715 528963255 500560878 162231857 77289724 380489971 222919248 975073174 239073584 357361573 585478534 742352204 326867120 191956558 971551123 285727804 422033398 154665955 296892172 961065478 972726098 889717068 528285595 125005691 799409512 396481510 663300221 336303396 770245040 309830146 586283267 917648314 114268405 328686948 784762645 445650092 139418583 267204036 341781930 919596188 612331337 514529104 548952401 958194658 538183955 139391784 621107883 5734151 756465745 485063137 236169454 946389324 558245362 339950595 142060132 779254049 490190650 923849867 242644714 937511598 817373248 135005546 143647857 893789261 837139569 510340611 999943553 710229773 179184395 171954097 550728625 992939313 662320035 350292031 949513776 283200687 470164127 790112366 832831551 486444978 541244861 318598771 814993845 628487961 757363338 963101302 667360634 202755829 78549228 686709523 901165068 107500303 202537881 611655133 94638589 280700255 584242845 123792854 562128498 61584022 848736728 998957561 678407590 964228757 679675774 626700209 133423973 508273908 185781397 93299551 635251601 992903548 901654394 126229719 164273313 589582509 362518108 496304099 520365597 814926393 230849984 747741375 265134371 697993095 490102011 684706459 445186789 974870577 721039547 84381725 938823977 423080070 614902143 947295708 701748936 460055561 40573978 20158182 601055279 743978480 510050868 175690554 361334753 769570213 911580873 741912655 607876850 660334409 824443560 557311372 960283533 698991148 250146549 456965325 470520176 513113942 420031399 314158309 119545963 5829634 111714315 20424726 343615717 745585693 296745791 945822874 763739223 890895051 466989240 976533790 198099406 73556707 100971708 608736066 764855405 214461806 337714921 891180058 537854441 296657452 567819436 264543408 564641547 554765326 998544331 948750975 658951218 322009021 69968604 203383801 298573774 830656530 921100747 683818243 273491686 385034396 595601496 209198964 410229139 59345437 26632854 948599705 67541891 586504973 112798062 568810164 820710519 270549526 357258010 2633080 431868613 201789078 551293354 805924495 86019542 648421152 923498370 71488276 451089577 435795963 30863834 974537497 135828046 537224097 22491965 411583011 433016940 182010690 257831946 201862057 968065469 882577214 779177206 458124696 570004108 507934127 726755208 193239762 164877118 335676125 712808092 556029354 224958150 423198151 602712801 48389225 801696558 814975649 585173851 604693965 55126549 691565904 417799649 651599237 308856620 264350704 579914144 11919030 85762232 632332623 385206678 874992761 626130451 888486255 526415128 552967258 190528555 542175751 914345548 421446363 109860354 618689795 919965872 844067823 337513772 839976192 104789393 165464447 556279380 833186257 56658069 947054568 722079159 343881981 295399986 178062971 201711015 505966654 645463092 335711228 804634889 908778499 326795835 704914724 338018264 303906799 738388538 12884767 905137568 777084248 273576186 570627599 975578115 123789256 681923733 36053383 114825528 134102912 3731195 153384720 736547463 537111536 98495088 429936295 270376654 777914944 584100876 228086589 70271743 259512267 5799994 386755382 907660447 320611486 190924601 740532971 775038537 692088830 852812190 172390696 261462569 372318431 226431184 731569582 159036034 197070957 256471947 373847986 791793704 638194823 61627998 922966620 372827399 817092671 317270060 170234185 432084122 201490523 730818735 919112970 944857716 810965975 741830384 274709411 564151995 490187361 975682001 631190285 57442472 399143132 126774403 491440052 105660168 43034077 596283152 255456505 765317310 196324913 286678226 805887921 943020350 531829077 870221562 720208036 119863060 130835452 415459082 868375311 926753371 548638349 74994523 974339362 536735559 368623011 278282648 734765699 519433883 644041355 31167297 594271434 931597363 522637257 386009129 644634115 447908220 5475219 3929337 152695599 817343991 766715476 978367915 83099842 305308602 409387819 281653775 154897703 313000942 459202666 775141961 257127735 352392018 776636951 389100881 609182406 224194742 781846126 313669490 129423127 246200193 237218908 610608331 483729762 938391596 992276998 131781073 424530773 900379845 908389696 515799499 21424528 546710381 230672919 693694805 167859752 109643482 516164936 608131293 834222372 998768342 178540742 367695657 778480387 894438078 343546936 79880144 528941365 260049412 581897080 995508668 375212189 794880685 5747477 506451886 696820246 764253139 438467282 685160122 392164074 476462116 908781605 640470726 196558172 263287905 249538745 75281680 930387744 42890208 396044524 707998373 862312926 971476747 729036369 263079147 748028850 162502111 525725232 128372760 150900655 961683566 763952129 989483448 952885847 604842845 80866805 13053739 547250213 334239334 684565357 398460452 350707203 523148504 719931264 880471851 646663636 272144402 677749626 149891612 171742443 530066955 992927575 679819942 254199442 788736973 419259468 503375565 461502597 73185781 686869311 331825513 151257460 534713653 962613578 960174757 514189188 434591955 475667004 121071232 643736271 238370599 618454295 575343951 955321823 482599969 490090131 85524025 508971575 181834176 539031962 451062202 445857994 715625116 543669706 189194785 49392770 387453021 114101750 433714193 365175994 517498945 952876197 263301892 342548933 227769754 51043474 295546307 248776037 316691022 140572970 221337327 176676692 809657173 580242193 761206140 826463679 122517311 902334109 2838832 801244101 981604524 416293465 449376553 32830460 671294161 263417220 271911508 51551981 404848633 98065552 934044663 506183571 968292866 192831907 869428775 35572704 50716892 609936153 791646803 643734329 945340686 529816576 579157431 926425845 676075057 585155226 443627498 985887969 748437874 367807711 426388817 22176190 375911956 232885496 779651497 110149058 182429676 244570053 295885441 696806675 920103395 730063704 166149565 812891215 333571704 733653368 78687253 131947271 124368443 875846175 763059603 411817536 190488659 185097212 882415129 176052464 828048633 919725810 284013529 779541639 679367163 978846871 836077531 412527971 139407674 21814966 545566330 261690202 39323948 152661965 800465895 424029237 329162587 99725712 20551845 542198831 907713763 959632228 204227083 655357562 849443064 252956389 922537157 595645370 568875358 559363680 572151123 674424968 779943151 640071002 996408969 992375280 484176409 579593479 338521102 370519027 127866717 947747027 527269085 518787590 205886929 983111901 446941638 886945169 836595103 658984055 507688942 331840625 710163588 963812008 878757194 555173239 360832082 188484266 574916392 650816231 904873838 799925868 538905767 748420858 733063506 263596816 154009403 823068764 463259404 593475950 180576042 923574958 283979198 390766224 821642769 858682117 74805532 984287796 578831199 950491241 896237041 952808269 35495128 969768535 438159514 936917634 686050067 227150144 865881481 395507886 374123517 475680008 671374275 835571550 929640788 695659399 812461923 611951958 594645293 697850636 288970261 587354892 423773295 428144853 566320027 68414251 864017238 110911895 480456268 203643666 426685424 7479804 692505488 889546579 674933411 491641632 82317413 538828340 700829861 601471764 924815325 404785201 131124867 843644764 640079774 861698168 879345819 653577072 269719648 492188011 431263649 385310014 783753843 11019042 274964254 936893862 251613750 249612262 53372396 756754685 400281249 374632119 588543676 729697675 540371900 213731272 708444304 358768653 312018213 182065917 315209025 994569267 363889295 120204916 354911226 502858531 767136317 182170361 526449083 385037300 359397259 780453520 266998743 229938228 858563430 785431791 225047158 588490339 827552974 516341249 400135956 658761334 397348187 904539236 190434560 364988501 723401654 710142956 555321310 501370461 605611035 248386590 244994085 421333982 20106462 311859894 716660642 874863517 623776482 187982881 515734003 123305044 1589795 438791683 361422093 127741742 2049070 561365427 664036279 109478475 151345316 248430778 970011149 896349506 571504571 45820248 885970429 733610906 746996924 391305471 879349197 802033999 434224262 142692054 714354323 752448852 519690762 656878647 895346875 653215243 403072717 115652401 318374022 598396878 799701353 11912454 455129733 464197482 75257355 44312750 299692578 364352671 101791479 609410387 952384023 590853281 196869888 578422995 322359540 904641178 92083216 482785346 434345373 488168998 803540390 939268709 297321418 900958677 357552979 51123255 327212678 166499244 408439612 485653863 105131697 90544548 31993499 209823961 881765246 304998954 628482110 97352993 303781621 586563741 252451590 786039051 435269746 654638548 503664746 850962454 689264932 522562709 129083122 949955827 523117711 190333471 242674876 805981195 103964427 395692193 481719289 566555127 390647362 828713408 481884017 909633029 650302902 992252693 568437499 260886714 946390328 668761773 31601670 671061067 934674290 194940807 820196884 160050978 296863327 297084442 600126265 904741983 485809101 409240780 575129248 438107220 996648930 476014716 549921030 575196424 210317716 296965881 106449725 657491638 315947311 120839048 92098731 890087499 675852500 696956258 999955400 933130219 142949108 443271731 27151011 45572460 223831256 389573789 816225118 27659481 965422877 608892595 978951854 77748976 499080240 299071102 204067932 874526117 77930710 151088763 146505158 973044893 675230887 434368539 587734110 356586932 556087950 21641282 692803626 172324727 10542923 56524233 857771075 876763051 443766769 992940541 884759894 257036228 608947816 236976413 376057894 415464302 893223404 7197407 269889543 395023624 590718860 262591723 793571685 653864996 302402220 184972127 478543419 915846665 694911363 238999369 671464093 33365553 745304990 84756272 535453998 969271499 593913435 823700364 163260842 941963066 220540271 354958153 999414110 424032916 764156257 356965961 480908715 340182051 234480652 731003359 86338182 632428008 65907489 641082708 525112571 969355027 135688866 956967013 145738662 638450316 890640744 115932611 897105208 83734382 294924703 363910034 798004472 747598214 509766469 974926826 273390399 361100248 459409070 221549913 385162747 168002330 499518211 227478367 901715757 335611448 98765502 870204657 142814059 286405326 739861551 459633911 70273630 683626417 749234682 415509199 776667461 940950887 77352855 385528519 183631729 568280233 768035793 889526950 588030663 758039784 825340744 154291236 483905089 359987910 341789423 166873965 314049645 761298585 315841678 536697762 135643116 625885419 76172097 376529239 685460468 403652860 211302903 162293526 22354639 431231294 468716019 625505755 274081370 597820376 211193679 521217943 246136455 568269605 584392564 155263406 100112859 917036082 190631332 708914552 86268400 927027523 209666929 858855619 845971957 127008334 323755330 438163535 280204585 832924542 998707413 832855121 821015907 960327601 195298231 224586993 211373453 581967611 868742094 62262988 440415780 794151713 929409488 546067826 62767546 62561311 149827529 648843241 885305205 946569379 26757017 249502504 639733645 3850383 981624692 360512669 970180561 826718586 488495200 486809256 804958755 660676912 710718650 663605533 876527351 377169966 355034801 599723462 185379800 375034407 611752138 178406111 375846884 118698625 162269274 276591000 195822155 474019545 832021007 788439703 703007955 975900539 635380840 290731123 363919959 64049130 992493624 117618746 201416003 699977566 704747303 609646572 375924762 746289473 387078705 64352509 157965809 207852465 615076901 470313687 787285233 132133890 737648167 733071190 561180376 851882809 402086446 777170250 508461433 26400913 754276230 888564472 104985911 200544762 957430096 805772953 361175950 23915157 64705277 804774106 552083851 383251257 586179799 752862043 826728526 704705266 306626169 607214384 46604687 969539964 200124241 944354659 934156823 261465548 188142885 904457583 690961986 897962632 501035659 439949255 697305732 600797834 547117935 307063885 558107104 990476640 142290321 427997403 593065074 751261135 833322756 443230142 237463527 28331084 714129585 265579061 972474368 909925761 450255058 335265526 905872147 156950734 750323575 847617706 495039626 366274246 795399940 903443053 113710945 522888622 420148913 649870927 392101548 573387265 346037513 75370453 427882511 63725294 736172651 439663224 588109892 186772696 162068876 826350628 402624409 71955925 898958323 993171387 22589039 79834672 336113276 322744720 453114812 391984872 101211094 704056301 285383562 772501550 406860549 310307213 622854006 886950891 811999200 563575842 74281265 20181048 223136148 595650768 586585347 998619619 51856671 843457712 889214019 141773041 187565526 58045774 393468384 468839190 297690591 706214188 918350555 337364543 551414968 570901053 941835466 978011912 255306158 768934506 879475799 523742022 969399911 689852945 870732735 307179135 224951129 734657664 987104084 445701741 431016528 306321022 946055164 653529984 172050668 886896835 550792111 195403608 387054880 882717308 353484796 36162382 80297397 537585608 645697157 224967916 422832837 626060861 993230206 649977968 395262528 653396323 589804594 748607310 888249962 682870583 49577342 265445547 734665307 452989098 419092052 913305058 923297917 728389152 901011002 727934211 209174290 448413682 545521608 271849295 356291244 874498284 13931310 432305086 497626291 412924111 108463787 75814265 653751779 511624912 873942295 417635424 225744587 867694615 819718234 85329796 317251150 29818434 350703090 399998382 620172838 215096287 317697394 87517655 979066204 662159093 312591101 68567470 812175057 286373244 597110223 582708245 647685049 376714720 651833524 400416164 562747931 461503874 751221391 594094885 748514642 66231095 86858965 731740694 517767311 746752967 203076111 914446634 511749972 398952047 515322972 664814280 199349754 732366176 929464300 550253962 162961452 402897981 531056518 955102912 153938282 221190817 242372355 954438891 363187591 975548567 69691856 468126786 663631660 597054240 486740336 10199344 980794451 565721265 779026424 756931284 739514572 197364658 391073938 772859263 313782971 99974400 949068794 635681082 694517528 347193963 43413764 473758781 309985325 367187769 214524692 229444985 161830940 908891297 273513124 955736847 92470103 265655377 667960258 829876951 584648486 704464105 768678031 651363546 388192805 965787774 872673217 787701720 410265794 188700952 202438945 37253059 480873411 880532787 797348366 188688450 694003390 881790530 540208121 139906863 470525600 579458855 341128935 484387610 393913383 542365885 670043634 279208899 486226536 497671247 195175880 692915363 659473225 509543453 170735402 427077476 298914312 444106206 373090159 631240805 827617714 519979321 945962750 737678135 186278317 150856779 274999767 962079010 567005231 363472932 342074891 644777889 385063108 727989065 653837887 751209697 51956428 151601204 956711982 759676999 487813626 909664207 390790436 718815463 307206870 195375101 13127811 979123725 357997372 153969682 484590658 169250744 200871643 816553301 308867945 995709722 756344247 576285061 431618198 255278361 85439144 333245265 639890555 582762193 824198617 495668959 901304925 972756496 390348105 513424966 100154519 35756505 638699853 650026515 559330581 879575778 271628 388680648 670875098 643328021 978673410 589565016 343519098 829656339 107388797 526270637 826071456 514441900 992391459 595364387 727356809 244599656 409156971 761502474 640021640 415498241 898553631 242086695 583680128 623251431 615518944 872344627 236222061 172270523 338725282 697354331 209329371 729810900 460376875 65114302 761587309 978030781 756955801 456211442 858825816 868519861 811871961 756163200 463039717 544824109 701974320 873177444 710887922 747593550 996735926 447608462 421126002 645877872 593729494 404202339 943681512 168708004 344556752 685486908 726918384 42811180 631524919 789365221 822418871 141728509 777663604 435593760 434172798 886124868 590374209 675279392 985302042 197588702 237340206 128718862 963928695 511222238 150926623 398832264 6775568 804516363 126403787 818995485 295029369 128237919 594827583 377883858 825998806 743093897 284092506 512761504 303817057 317030252 680809039 557911027 555526375 143154078 870005285 801885996 734986828 324902634 316734522 303249952 19409410 451077070 620048060 724012696 871617942 8500222 650974255 689011919 979260964 222140639 962596842 430777335 199234269 296592396 977176729 53261492 609618824 875090389 874809532 143246239 3876607 652787131 699504423 272888260 237150637 997183222 527724416 197678884 277985303 776400623 917206213 478775092 182545232 67510726 144822723 215883100 549250947 297419981 819241887 796591994 7689836 764739850 845182545 976350300 107504607 848738233 89599268 372676681 736997952 976236744 554238776 548615545 267668234 203465050 961742336 51678872 764046665 400563781 784021445 604524359 814843423 882818707 725434912 164880539 846075714 636412933 174854788 272949148 629916540 210725771 982983858 252361672 896000810 858186189 447014722 486013837 407311550 151344037 891425313 449945810 930810686 234621091 192779021 515107183 360571586 435317640 597319707 648249776 451215097 552804043 997348914 677263062 855401381 482698519 170856334 71925142 185397530 571590091 962350653 966540440 835106499 8901496 903383205 324306681 73724829 991549543 338541564 997415113 436060347 93380881 145789135 178017166 48834496 913498789 304658812 932588223 301677416 154810757 67979447 198301258 925130751 549487049 838888457 931347727 538775528 34841018 382811212 599254883 945197591 751278680 243199536 725497742 37545111 797242837 395415738 545365069 225125638 206062104 54363584 769232720 847992084 535512891 165202542 883942333 705625864 213350926 954893251 415977644 838766651 421485201 766939413 562149800 673183130 127791741 34768521 991925044 547265064 340822972 723244956 148645700 651816826 171848941 893398941 634142656 680125497 130949089 251100208 441521413 390164132 45981729 163423180 582226019 20249355 149352293 776161342 737082016 167188053 511756830 361616676 989314675 563107451 218572781 650941043 316023050 191202058 982366762 911843570 305703557 248329637 573024862 922011324 896632440 140782209 828692169 792462786 813093997 169857768 251707101 574939207 634434144 403225526 327460800 380751714 352440129 345350111 936758990 989403519 642692469 321841383 749997077 49805022 492048214 99567464 782836952 894005267 219697582 538923408 382815757 461992580 1677376 63750560 482527967 18131183 585800767 258182766 604020524 575363041 540380885 530014180 933523463 247395903 575554974 149852031 121041975 542142913 797131562 941877456 733458103 454415218 630549374 576397310 777479988 86338610 473719443 199703619 89294482 444165940 506661078 537222763 744755559 356709504 917543335 430232920 557303423 971438962 179005402 62489216 692499798 416103737 944414777 975452781 678638241 729146201 258272767 610467644 753735877 131103273 422774622 731820319 859387998 114625878 399340026 371774171 829341882 903493215 504735084 918936650 960516700 593760022 262878145 68396763 840248697 756217381 954843129 200199181 954723966 567690119 545220744 146609655 575527560 34846986 979259351 493966275 488929258 871356116 261176004 965861423 391995563 133289435 457334558 611036683 671138565 731823211 54481450 522375357 100450791 947080868 730893601 409535680 498011508 324659450 137562031 528581152 655410050 650658483 470256758 882295551 525072924 480943212 373462409 175346708 355868673 701139093 671385841 381822759 927145762 548483568 436983084 467068310 904595240 914778134 656898472 433203412 218324459 266850290 637449549 574430436 182336508 496928324 994632432 215903458 454859548 663428127 370620897 347684218 856023747 506795883 641288798 750230895 113451162 454052708 334093341 381297174 721389313 705328921 856327878 65854936 232100746 568590830 514106999 551396532 699901820 44871194 107787326 538511546 260315729 708644650 104337570 738320529 908060728 569314940 164495899 89268210 652033171 23541189 278371221 602092074 779829882 156074380 137466098 490335900 799306551 479161772 46972293 282797373 580685000 478398422 795719319 427499286 121088609 482115596 141424101 745447110 523363559 878779175 329660448 167263485 167870325 849937747 84762476 637402882 99177435 312322702 395581409 752667438 937954586 618400556 761845773 729534319 156438505 196062806 501087089 505334214 597862195 475626118 133687039 285264073 426335895 172453900 87793059 16256034 579365095 116144012 385284791 717876494 505395881 358450814 811280012 655943390 570469529 260899245 524785896 16165241 814643237 543397817 260443523 759941593 868149743 464285077 892542089 587118729 144805455 117129993 833482523 85558830 984069071 553972528 789813198 952923131 536368557 480451323 24715562 628025403 372735580 819473325 512453676 826577611 84512259 812783454 948809412 588985756 41929980 155833720 267457624 157931830 283672151 624675133 53841983 826551600 829612628 68751422 474957383 575643321 964274413 840692453 549678896 163458834 719676490 234049261 643102511 371535378 780715338 221825508 719106156 468859553 62093313 580794288 184621444 835804989 738535476 218225927 561995783 749586552 942671327 816673269 763520251 158851447 929587631 195471962 97489751 853378676 576741257 392914025 168044681 678049086 721438465 990495531 831450353 499878836 952056292 104874234 165454435 684347470 739210414 207404550 195024041 488039572 676294932 63139539 539324927 605567396 344020092 375915705 432947093 67501744 786260096 468093027 28879377 664671614 2572143 502867025 71914506 687189222 199933644 400646998 447269006 508416856 210507213 479681818 965891485 803442003 821621213 391092377 89406635 144787439 133247770 579779746 315036450 142306132 65967831 478932056 915647710 286602049 137040924 200901557 260999855 704538502 536931873 522640898 405016282 116106890 643302103 349327457 874989977 394212805 796203871 220315203 361187222 105160775 920656528 378032114 278443636 722784560 489852789 764073224 103023430 713286710 651822541 893353206 361105174 543042082 647181962 533436287 514530656 109802323 348000850 179184954 297012372 227412025 859530753 816210451 899410071 774555099 359929125 477514698 533187906 971786322 63863937 208595570 918632674 601592139 501645450 659321076 696526006 53923465 876880877 183753610 295006069 788782177 620297735 85312580 317493189 641112637 65287531 759580038 469147845 988244762 861426784 517743752 74061444 617921545 742743905 211402709 814282887 312140977 183599515 908394956 176713799 666233803 757119346 823266082 359914417 961873317 461135612 732920670 133297572 853614240 165854340 768481116 928527990 20671410 755649288 819013579 250074736 234848997 317019836 116730287 326854221 224657366 271387013 556384479 125201343 755837495 700220287 99346568 389520874 158625869 219863416 961168808 825116647 678485362 885748594 331188628 109835587 97798292 589637925 565957234 245333117 687388853 543533178 732372928 802879371 601629545 260361233 16269515 530496085 218153307 936487868 50129721 502513465 213481672 662410498 416703360 450825606 439621634 537523101 847292268 557061633 850711022 982557180 71356061 796590947 458743430 765658562 861586182 163371736 880131929 698502213 835594607 861574273 207205894 90623760 495899636 487075827 27731140 482154593 801212549 760231094 679479517 531244459 980599652 531755720 739781935 203005462 975253418 555494167 563802794 772900602 900910529 624485386 14070996 881947752 300624875 209163257 836342856 32669601 168252602 488537520 689556786 615216540 126506390 926899953 144304085 417816964 891985211 430837486 37553925 958174520 436623415 374062291 660038829 303025098 208208240 663504442 825025099 931716609 577895581 724881844 569344367 585614039 327402184 783255879 222757440 818318330 174458578 810603755 578639350 558390863 308915695 21581580 853140833 505306219 136498726 719575819 86303585 814939416 311854802 98162621 322592619 940039127 817057060 360166378 802932235 184296792 391429278 648941775 826538844 997817859 965651353 803789469 657171345 145711218 911772096 778135799 820945264 269704180 107631763 614292856 17413330 628811532 37164517 251228715 235954469 112892401 260834399 681232913 297102826 478432524 502575611 29485983 559753527 368117628 466930825 412859709 340045877 83611541 562895917 229481416 397770659 715223388 365980639 616810256 52643409 302651149 809898985 340112475 942623654 45765526 52351085 52719840 46443547 870720281 185338845 583269965 196676542 498681710 906928513 73002306 157455024 654478494 335977972 993947092 273017767 295656809 283428263 433031691 152755309 822704065 680862045 343330916 913458271 83084621 283954349 687595087 644210414 699944423 115745924 861838514 263433249 754843678 417262496 805888100 788581138 654467509 438789398 948905651 14405229 224172578 563165900 366808543 804376820 411224848 812291584 652027292 55461885 608762077 802441151 930668436 778402802 51613981 611817327 161222627 739919056 311525141 626670917 338325401 293074601 508966976 63694544 573247804 179757090 729284302 346196844 228073795 663232245 941437984 207779536 465809052 94929520 445483342 830060929 741217062 692848117 553220513 468709212 483647032 621334392 315843865 699226640 505704216 315233284 930599144 196567969 612044165 718966326 275960308 401038055 350232622 986465472 724088665 961519117 298955577 631354088 111047909 882436370 250659005 577976582 505437595 130879051 335411528 706683145 527205936 828344031 501347417 105059571 917297553 72992586 948852967 338106712 436923739 578006490 424389080 469541860 719545442 907139381 412544139 344807890 647829803 542602961 287242063 248224373 989877873 241471355 153900009 300031923 817703331 407747537 326522386 911697028 226382692 282503368 193935863 962845048 36198923 814030886 136035511 911563566 587999777 157678344 447547625 682589918 423241957 932397662 361968915 556125904 541839563 704367978 269375540 302189283 778564600 238532677 715681851 720839431 687741128 599349850 974142605 651932611 548204105 86551785 585044099 901130416 326749885 882402693 306154985 991459579 455476252 28206743 598547841 636430311 477887631 37271001 200272254 663912777 556664054 90779867 298121225 543926282 707431267 138007937 368574912 812617385 276536221 860998274 724984370 796569526 628447646 685227499 658796644 497450072 358398486 743643547 717750607 873775304 753250021 566465988 659115615 752730836 73446308 412130672 221532149 487139933 822871069 574151418 501397479 494771673 34538191 285799057 108385787 92630737 615905131 505315512 336865391 814271588 665965401 870432969 586080372 90406339 911585332 817392493 971110062 266724531 566770762 309867301 994120630 658543630 611222813 486693573 797664920 924719682 657130468 969513971 644018517 430282704 952927755 104772525 686384482 773668302 443529646 45951680 981751336 318410854 41885218 875840593 506077570 366973269 946682989 309343832 877098050 124537965 435203529 918335008 464303275 310744083 805406757 654646473 825149176 375464385 139258020 177960902 258330580 5061253 766530587 554546016 302128865 987355009 677475735 485472048 729650993 466189929 4765397 964095657 626121680 50177544 841049289 235835276 30220856 86394043 885768728 644698737 352371418 906752244 5047197 573363525 198299036 127131064 296017639 526078918 871038038 865917218 729624761 797190153 737472340 356949214 528769930 698465013 379291607 514429614 320313859 968960198 791222932 913403113 797890435 249321866 440643123 384703735 890858142 2057639 370443729 990723030 11478426 242156115 451978622 111444120 317529840 882238491 600170176 719989475 599912913 923692381 824411919 630572911 316858015 829826765 422733399 705855627 680706927 511175668 452719481 162757785 490958990 885256108 760373449 221693070 961023225 215560869 636817553 743428723 767950051 710925796 170477453 104200166 348086835 744159551 437097838 776129690 950856963 316212194 276385623 831716562 844316194 198827212 926568035 751651818 258988947 784265554 770708509 679933646 784773900 513845148 369196294 514278017 39752312 618210596 266566930 162084504 929875061 673167162 729898027 463732156 47102167 743823234 77233837 228468268 252540195 897880691 939328488 733119032 832492309 647102938 178769570 107918023 957718810 647043925 697352594 945343442 201586903 724483289 597655014 72641255 390588832 846032173 226304958 886893479 837615362 716089964 493964462 844504136 772385593 838135431 260480576 858750995 69622202 14746561 216727664 621421543 622629291 58956081 924596782 786004660 754825830 982697795 129311711 208096257 581646330 278274615 636417501 413268583 317221802 557412001 72294130 172529684 696123500 792771559 592889569 809693513 612158314 503222471 186342621 597519580 293162116 747785678 112055824 609202359 667438285 611257825 794135062 22854743 794513162 114946232 944497023 446845774 502483510 865151838 418786384 681623489 744697345 645451955 862099587 931050218 251465548 131405290 706486914 711317911 609280174 486121739 214898096 603616425 618363122 820299634 241946848 512440727 118336919 470971982 940646108 774379752 280684879 297125155 755610335 334817980 429698688 572981832 474111259 576949060 343894470 653191530 615985973 978394950 485367919 552902151 532773060 368657050 891417853 820085236 538448853 332880047 304505768 727835608 361486698 436061446 353568473 637529007 334570998 192897462 878953393 598195527 973218786 232796647 747182720 548277446 831548428 350792279 733757774 818860322 477899843 488929240 93210709 555123879 574899148 104262607 370322052 46148469 466146784 110092983 236392446 478597120 128563755 692569244 773380761 210933646 181668175 202544033 627674208 452653756 981740895 569807482 297329681 501521402 212265060 328306419 25022368 565545482 785323740 331490407 393014962 189629061 749027382 918608457 710947107 829664342 271057751 971844767 717694849 125442108 836002072 123005057 142342030 233551693 267142853 300119199 306805441 942853486 588517535 275796409 989184198 700135387 766272603 179130148 309573626 715618726 864818082 141420876 137812464 100002351 535499407 560188460 697748462 298071985 913938484 155696599 37795184 970195382 777082645 216247027 386229412 139605917 405525418 363309881 391995629 438660891 165170914 54021623 320974177 810811062 706817691 372359821 140086091 420039756 205004843 483303155 367079593 686689675 831454938 984180786 596270766 31538294 534727269 600964838 364398657 929323494 196812157 516753347 278658685 65881607 443705926 55972365 416176943 930099927 345169625 625149470 723706715 815999658 171722178 790079460 803410360 340587688 592458882 501136224 577027375 691320653 579873806 569605928 249013088 634371305 944901454 703106789 37960988 888689694 587333023 791654358 623505132 456352357 224686417 55258956 781656457 804552841 687916074 692551468 400836706 585222441 134867938 130524784 198064153 76004155 911366821 980590502 610764550 392052356 875016596 185818991 286099378 175063584 671965508 819903233 448160606 439863552 119765053 283142822 265931898 707118183 712709500 995618363 432398638 990872685 756648689 109891506 172963796 724746364 416226818 498052496 706846587 623958486 606953478 754052975 420785254 891802124 410145995 952669309 473151627 783268744 991770385 48568316 763333653 664373764 107209997 419482560 364859875 488249105 340474087 614899380 6564870 525338770 473002300 464981333 672211015 318853438 259383196 84506677 185523358 904040737 503679245 853396601 963833788 344015387 229819014 417668700 399226242 527361631 667144565 37279146 567334280 424702710 990569018 431963206 625132951 476370490 430590122 92187812 537081391 306843227 732063884 775009871 783406850 186846685 831365151 67856484 836909943 787207192 664981139 20515862 753216296 120100791 243336843 546481960 7813732 642920250 414171297 770635894 140076718 640371060 623191522 858350188 501478204 624261133 663814222 672646541 344344440 342231552 612122969 509221613 999164803 71876126 277249645 372764344 711169197 191683978 271156582 910842025 643386878 763844156 798251284 634175635 965215409 198855038 12688317 505945308 139138227 334423154 277552536 428480765 356746024 899843721 115384658 185337859 788300519 227524621 191038605 772985105 470207225 270124184 195496540 214692316 642061598 22671771 102345673 995271981 508759623 923694809 601474640 166725475 572255005 928401129 13406817 101973742 270116473 736855479 480895969 108288725 700130794 164526851 350116009 364061489 407214130 524775648 725554950 518814640 254953417 105668150 893569080 650613779 918208857 554247489 549754099 753624752 441910336 47277073 274172384 419414768 423442193 111608584 463205405 797014994 198032915 553932639 161602489 757762151 25363904 123742625 913953849 506713684 184798024 954045997 789883158 875634771 325005067 456420792 110830653 897839282 65436963 976625609 876485773 89999826 486506456 412705084 452097116 707467433 95664681 393114304 771426291 426405185 643390538 746264921 54723597 104258358 437987872 441801438 238165596 144490556 720964039 684327548 995971588 69296279 495271437 673382705 47848990 103567778 407843572 172334161 632449591 949840969 555611187 873428485 738096334 725639566 271425462 742250439 230496729 132133639 824540186 461099240 646463297 344858462 442387250 291918603 221850465 465118416 588858501 273278631 669201291 500725167 18810317 841143176 981576835 372183776 236525945 761055054 512886530 167729758 768654124 523009516 779714100 418084277 966666812 310045738 123022906 815259783 896444979 36063780 125957289 29800203 174448466 171618250 401596170 329642633 367318793 549237598 694542168 17372127 180695680 114786808 874470533 292356607 802552594 291790341 669954805 977038959 564262604 17984452 123512576 484752839 399673074 116275144 940127604 452293686 334364283 849757561 255707154 542082558 959328912 542537618 489354765 55689716 64703249 174737060 485628046 949252609 163222800 10325906 340766514 677409187 968396115 118694420 813698698 928695916 595355350 101580084 823598233 435668098 72574279 171283411 185748826 130481950 892772745 934279461 343375160 519957773 442156593 960964913 893018516 918187826 796818956 244812114 285911875 714483970 163326103 535246008 125404429 971129094 334697093 946779880 179020335 418671965 984994365 884841016 24909018 944988215 825787482 575368276 302634162 821318747 647853609 757998780 461230415 526630818 408057390 497347395 680210623 988021113 460650143 815140497 829139458 682738019 930259431 402512546 119698829 623014773 955334437 957931846 572568520 353072857 371939499 120549535 352301968 517844043 889034879 86016421 600378549 883314847 670708957 150746789 631810685 773977913 896685234 114027966 705162784 373584531 330922531 85963619 577625929 144148666 171593988 502995676 867755675 443068370 435287906 502664900 924002858 432179342 893876218 282209676 299989502 453692088 652313279 2156023 570275988 788988335 221834072 973203868 189707612 499207908 515205535 974291816 101685052 431191132 429401123 849303065 757442827 382244657 4429479 205621444 237320215 297555985 306348193 73171791 615883424 864866237 243742140 436557047 927083098 352966027 37983318 8387276 447969007 359454181 14693890 805140016 213406843 429327048 25718792 132107612 570848270 173741126 46140896 795374043 359711278 663773956 628129211 19588877 188182354 571708093 785885946 516851366 511347816 956041917 409515700 192498476 17374543 593609318 737521717 889339516 414842718 874399663 573988729 252070469 86059484 143953823 573049781 265593995 294261893 183470807 342028751 839271974 398876684 400048646 812126433 882563392 671715475 516731506 974650554 42477531 408411188 226170486 900343900 711641673 354692988 391111166 84019839 754150322 431166954 88019212 130329101 983304337 188608629 920172087 652731044 524724535 354646531 380859175 950632727 166510151 102758899 789677338 341849069 326584120 826729620 549129058 746720737 646572759 762761643 28879333 209818720 299721154 88417009 822322588 21724686 983693549 206429331 316069652 353673537 244444193 769787313 291721456 157047428 46806136 813184223 389730916 56814870 553399523 501708966 862953404 601533801 255624356 968017924 43158227 51196323 403740628 623372008 592585628 854041632 281277406 98208951 770166429 180555245 832687106 170538698 740994415 571646287 438424019 607100653 330023744 12810811 55409594 382669282 138593104 475063515 952029552 372608988 16930167 186939407 776868488 133474053 394985118 831865833 587769571 431784952 283007809 321463856 972528441 954820679 708143092 901290718 793711511 285892342 675471835 398790306 399945179 627662590 640768304 944709983 884414522 115588043 486902720 999400107 195374011 504686527 142463342 598904913 590449338 509722285 969864879 764422863 714617190 176749662 313258765 841415129 745218626 200697103 381082021 613353684 464284328 512856049 158156200 384269660 758679361 86313384 592471773 403964862 12435598 294640333 283214877 262582142 297640803 770722412 763558870 930570195 833235814 744468615 438168713 786943526 649282964 526598288 805037901 263747735 503652541 955735539 42263625 398023288 10712579 611660938 752584509 374374608 539182943 730212135 633297914 755612377 398459932 804276750 639980773 83356290 121217370 847324535 322596729 510408941 588820620 617668112 804759234 88871666 423014906 162651514 796382178 559942043 926663488 788986056 611939983 682868902 996625869 632204547 765513619 345656582 828543845 441906088 855045963 60501858 957862560 889706279 432060457 355037333 313317225 305106278 300564274 927013932 347568511 554152509 595396737 349644011 536454903 906200568 330414530 908982088 719062200 570667480 684250296 768245742 814631165 786961554 487242167 882368060 479129559 488409294 941506090 883785412 6204329 474398633 970220302 610078668 641957802 905262900 160281973 502012368 555179622 831409906 219690245 123913726 625545278 300371038 220052087 119783096 85364195 401069411 596147736 209226774 189552351 238713058 846056010 625835617 933374476 318828335 189476356 850180249 873261594 817998996 134848846 949811441 237227022 924942797 752772039 235898701 201050045 199340683 678945055 757125579 839011925 137406449 917783453 424016695 83331797 179332890 357419161 46194069 828994192 899344273 345268483 702384795 401975727 269854167 597064667 497615924 603677611 822636000 858486966 760844030 8705495 267671958 697025088 949182669 646622164 275448149 245381300 756896038 850988570 399603309 805209702 628785605 386917494 657897380 769865274 721310487 778746502 206691249 403898409 551881920 238043199 307569090 844213187 762917399 647245416 2482679 226711208 77185189 897252124 54499300 344399118 10650794 502707788 233674003 847298623 361991576 628268091 822154624 214423319 323331222 262921728 547465243 514508938 234113790 198256135 862245706 826680860 537434847 141906576 281978724 283087975 35671419 242802735 498377015 285255065 517164490 319163978 304587394 785977331 55125750 98640286 195058300 842717259 216023773 785898683 223032907 94662794 928344722 541596803 118416270 719744047 990727901 556045999 708284116 951612107 32757942 878683210 276617251 45004419 340500941 776124468 506912114 359004305 733236485 886913440 702193966 230503363 506019061 160097430 231395001 484553467 172019814 805254770 637757670 123258285 259211480 330576483 140983935 877047908 590598396 273599469 243022015 824253757 856630587 376214375 620717016 942750826 131058734 56998014 75068271 319380656 96500515 203958448 63505691 602093545 946018463 740380626 849234153 421666179 319869143 613328523 684517339 825903872 405877301 630022358 865729636 419547252 647024089 383954564 991473390 989295370 718511125 40065976 188752468 434569087 474254064 838977385 536490088 371558565 475636900 97578467 705897070 710923746 205173281 839559494 556476831 192421806 182159752 91431430 471304104 851641881 796979888 360685417 379622696 771838786 235766180 145655308 105393205 398934497 315786530 249785439 129320152 797236670 845383966 253101860 44222348 170893879 368561469 738352628 64687043 996708030 668547419 847460794 357089377 925275481 275587077 19145013 265273407 991197985 229653760 530980731 468926633 391400131 862405568 523645553 780968416 384048386 529135089 627965267 526924185 340933427 269979122 557315378 906492285 65188799 48981333 636917105 358336423 197117092 66074465 979765320 892520745 172526069 905682320 894406977 828816519 595631190 461526545 313502142 214106682 543485312 602789959 829939057 917628718 710323907 296724296 621573857 358014276 559027583 255291998 869973484 134075857 502340010 98248586 353382463 618757149 86567501 598799356 75761120 422167013 285625863 344603804 568278437 213531098 890802056 512020613 858729914 308023840 201508375 628444036 68561951 756603600 459789 595721885 2414888 670259318 798536536 200148614 82856955 936045715 467146233 717402155 439844117 749515804 66880646 161313064 609098950 787081721 159175849 725344850 394074032 443883911 242475934 329336879 188263756 998508311 58198713 148772216 16237157 951986796 466251742 147734430 62578074 296645441 851255303 778620227 422875616 263312321 867661762 571734205 756924671 827144973 450873776 7150742 774898704 389139898 563671304 157681166 859707397 319415888 51454993 187569559 975731745 914097612 667580587 667253080 734252156 163987486 891773639 635176364 494539904 196481708 705449194 408361376 621572463 618723022 680415919 975925624 476271834 590040656 581196098 917208362 37913387 896391155 381890021 170463457 425373724 617691627 327853166 287456123 765489982 692057698 999923655 898431244 867784308 756688372 629659245 207120729 921349749 743136817 296425202 905867358 196989261 20273695 695373436 647283401 751969500 747974325 20864323 367499388 358523733 70114145 383409942 893568782 554163137 387319939 43803095 147549771 538031226 843241968 344180219 191968944 975795632 545602928 367348491 910812144 699806183 175011135 351111205 769872241 522627191 39189136 125734011 605489360 543730699 583518725 105750995 205895769 630843171 5154361 738946309 922130831 681456274 263987766 732732545 683703210 422929408 302672895 396756678 64265748 624460904 457675528 81569004 663215339 884881563 948269752 641689883 13572995 914164156 506250990 573821201 424560865 628216259 486299769 809186977 422988864 829806586 880609695 763206190 894038928 894319490 252637335 554774324 739428338 34670543 417360911 159786688 503295549 890172200 901751206 677231091 251104125 675295528 675915891 637678722 499135854 942157120 940014972 484755769 493300485 773352242 603335744 887307379 171370216 132477335 207905582 978782372 666647537 827011675 225822763 689027792 213301678 476130620 439286033 451372817 661689572 4444238 620291114 608340244 391536136 954663033 563532985 44096156 520381380 87912953 917152113 178458622 326644600 417682142 301440252 874865316 934331319 296798602 439513205 236738443 429072582 383579446 438010350 25457604 670677280 122413676 130334443 932965622 270294004 701972366 545461477 624669146 31883173 690413902 712010697 120933054 279342665 523280692 101145206 454241283 814945323 406737436 997777219 217408159 967897162 750955701 557681782 456495260 866020567 882235907 39528141 719892887 429096379 870118877 133770745 40243522 768268046 483987311 726996767 531163106 169275297 748737978 774179157 278603473 730647414 370762255 379169323 706498301 902700098 404513432 469212703 16673639 589916146 984594127 778962215 604388774 662840610 517990917 432767276 587427425 826987943 162674140 274612873 314828249 535165703 167172813 617321104 521941596 601779452 849940644 302679045 424306899 491260917 942845695 879957921 373543221 633279381 172543442 66675856 870221073 962766130 799392229 602874611 484309001 707540567 438587220 203826271 656647249 450544450 695750671 9273949 309074740 953640295 433726040 299245800 747636623 79065579 821481799 518590706 982640724 830328361 299346761 319002847 259791113 816811569 939568285 596197639 742586439 828109124 707363286 850882617 971059259 528223322 984962652 416200755 748156199 342590108 142129386 75171883 206373346 897332201 941646353 805758793 12183124 854004565 889012916 630565162 769378300 686306726 227594378 701551711 884971626 86267350 650986656 79363820 417433540 49371540 411844052 808259785 500707141 187080642 437080411 404654180 257183674 175802616 769066811 849697053 544241155 707890176 969762002 988101065 801632152 942404696 174648141 821937456 733757185 430346419 903772210 114190991 555026013 674711928 933659095 577318935 453719004 171784513 644595176 8482668 434713157 718405982 244669413 427046 574136689 885118544 973848993 176063059 692310222 617693774 85830596 190802675 501574621 560197059 769602634 661533819 174531251 671160782 420617475 7485267 307255420 549033152 289845265 465537624 893920244 61012642 96959596 685722459 342209516 270566316 119094369 535447455 547105739 842965711 98267663 439528031 645216778 220487212 281013737 453493574 398192823 215983003 123845943 654090485 329937907 184543013 743288980 692461440 847080564 701047178 901392497 266545905 448901636 737510076 423516561 704446916 679710719 60357730 290769291 447092585 638856153 419782742 414378828 323556550 29855638 454476584 142708114 192249522 982773328 769281176 753500529 858886779 663837365 192466463 116590290 113335905 813623687 816647527 168204527 796467736 53726746 649367759 641505497 219993418 29003481 599866344 942199282 271372307 590711233 706058234 753791091 300628355 483838179 91145344 354616807 548363296 667515111 945684903 781362094 408796257 235720068 169632980 783587708 93776180 624216073 710427931 292245975 431939193 27841496 155438536 757840540 436340100 502981349 644775642 936588666 317507487 686439995 443015043 430576757 728359557 543689847 200859305 771883621 300414185 645998155 528212328 173692788 780718317 440391420 467804558 430711204 249205931 154359525 392807966 745780551 191792304 553904626 380925902 927454597 608072316 193259558 466395528 698570969 264167171 494887445 169883885 760640404 517876015 11995498 27896525 947962969 793271387 191341923 360715696 428563615 487884505 189229904 658565200 590393139 201549422 124247319 435230749 847913651 2202833 783507891 132409784 953066003 664219695 736209840 624475512 487549724 366929834 766768049 605058536 409535720 64499157 791720683 57250886 189241960 787034937 297527207 650913030 345048798 246863572 24760772 860622414 301281379 684897941 974060338 853229687 838402658 80863713 653161080 112213138 426119195 987411985 793312558 672941281 361882913 313816306 592000644 461758809 480860124 60616515 946826682 613902375 316080648 840607034 886705318 73175080 801685813 353242368 277601329 98214767 635494213 832329520 420175066 560279491 266150128 283798876 959161137 61517086 119923267 414643336 231721053 787338287 237612316 899271085 438280855 492636889 428341680 289373239 397586349 326042290 683295494 399597192 403870592 675936645 638260602 712453747 423979654 61917136 259073339 524186561 439975496 224565575 822774988 101505199 973122021 932804431 725410182 397217390 213031054 240213891 287363605 990769570 309527560 891391539 553298167 463098084 412642093 609872608 67491585 815181120 235184747 78058178 322880985 773193912 35436099 67418434 824123004 494978239 927085515 90809472 46599610 173862590 773260077 606636494 206384821 225541778 603930662 661263410 191618918 782810892 141079687 246795496 986927384 980729456 213413048 285431262 670712555 268902646 204378672 60356151 455313490 624910157 90120702 739475145 965073813 196168979 971951939 985810078 754301520 864807774 370183094 784891767 62195186 733524278 969834014 666616900 739870783 455146008 897920220 987549613 215009743 447431285 786251870 334893196 154408589 640663600 315988909 484092017 374762040 129473828 225973472 320977437 772853989 906209692 875722150 356530183 515922299 218537689 236348865 282839770 114428469 581816208 284973445 380135925 587500836 843367017 990624349 780762601 916425899 920708737 879764807 974164223 952619009 592335849 531566931 626898352 909001650 602080292 29110311 829179691 384288286 887078061 333247102 559815122 643341817 35580783 805904036 264688061 467739850 577803083 285558524 362368309 665118572 83977366 927873147 709774650 708071567 438995864 402702122 272845822 561090871 799084302 629077159 877195624 130908988 287263400 911730852 490431378 504351177 338807180 821173607 442108236 643483102 842343121 210402377 630339734 855852750 436497413 605958711 266822441 473503937 713766312 514354740 783288559 813832499 772188078 996453333 507304583 8078707 853843969 272167875 767962562 807343909 133300989 715504189 293621289 985177281 70969843 733272467 780130676 762588690 183207334 596545708 173323796 48357047 771570384 489340289 258155434 437549733 225407134 293698976 481784717 906192035 654857520 837522601 467422537 711016652 675030554 742387412 681756955 736216849 934260454 754538346 500531830 289711029 843572112 743514440 609602176 806089167 885007624 583656799 928811157 394777547 406279092 762569526 244711107 193409001 388757483 665893222 252729933 482789053 124079227 396273693 929637929 628112813 559172387 148510620 137614722 76263798 854718746 417023673 212141622 20431528 946996615 721284446 938969432 759111205 117359110 212622088 171885487 820341158 158754601 240363336 319414326 280068662 645443829 833164358 457833626 497616053 505122145 22083385 665516479 914442838 940799194 425799408 964134971 961813793 945478338 955826764 390949082 348679794 314994668 959204547 531790616 377614200 850062114 894963423 523334570 785567159 986216352 77237437 207035637 786901382 634120598 54357135 182121877 111857810 214223017 562108698 17715416 256614489 630323826 8773689 422293313 294310576 963578621 850916696 112249605 17714750 933258572 368360441 575527569 519069438 818646482 622214707 177542914 185639617 95657209 490819886 758814891 205112746 449506716 591827880 512862611 841521840 175190925 770738803 511051252 551299103 35607568 646675700 815509181 753626647 976219230 367377318 339074065 278930188 930361892 953867413 688030150 120269892 214902273 880015332 425001959 530081372 980411915 40033351 560052531 290970564 14620747 542331273 39851419 495904062 326631740 95826696 406272712 124611171 107552336 25807412 194578066 98520606 99971691 744311571 917527946 190518574 953529958 647188672 601691505 478810280 441817997 655320552 771329471 996402292 105335330 245958475 480097821 939068875 288466392 389989953 487331051 866659775 745004632 22783282 313976251 915096499 976707007 184506397 701245396 59913183 953508638 97801490 549079728 665860045 870266105 147651256 217308286 650490079 566081481 743183560 276126368 450836166 878207610 331666575 951819822 746411532 939338989 627610480 332662898 676466828 943029367 9168224 655151466 825022452 511967840 70780265 533529674 201555530 199613030 492381223 766644215 462354020 756343607 935150670 583937932 144456302 399775482 406194466 935186137 433172584 37631943 582675197 426846431 546957990 865514538 221359052 587627093 611798606 380883876 707509650 792893990 975000029 572341034 742068964 181134833 174575523 370456484 161528684 281840264 61040706 501303407 670035559 507206257 807063859 625123292 16289574 234289768 73001281 65417647 255618449 695488475 446966539 149758880 763149471 333674348 421216134 873244637 715539167 269441395 247166073 675843462 595687154 177687162 78352128 337616176 256021518 943904703 254347274 406151011 667097725 355103157 384423131 389858076 232916508 233952387 706619275 134274124 867808989 397340291 228432260 352876118 395222341 605499588 170225159 339624597 737858286 689960841 619613352 196063956 540206342 89695432 41826254 985428948 879141071 557698732 758802228 682159561 519895069 383521300 119436395 262125789 508564443 575960850 593670486 600121260 447165062 79342956 125837996 788551111 169529008 658644766 865036409 908967473 296116606 783388373 562730141 343374309 500969259 607950966 270021963 704353357 496691075 515234197 402245516 34792396 632765544 867332606 822811066 792158262 120129105 569769520 311029253 380466515 171528902 598046173 763661041 985714528 273924837 456116332 973500374 771810189 463063520 629413751 229827935 81514623 69664637 75929933 862069259 792838864 276615317 403879281 283697840 873161098 348239253 718251801 929934579 2370224 859308288 300038064 241805776 566336438 362517994 837786964 517344280 954058243 591468158 68757336 774123758 323065206 535077498 499558084 912216650 123034334 450938286 863208656 902574966 451688577 316342401 118508909 455329171 629355670 898532972 507819964 740563477 27175883 57028732 617398932 676779331 155816895 875101140 758453504 394431160 215946633 69103145 931667135 847105509 461663791 765211204 987584195 266646156 628547888 82609796 460062130 175206726 969599227 70919001 747030120 980058111 419070838 296678858 696115315 570031733 595917432 645842416 417219734 24444604 94294094 83831673 864931654 658568636 263499322 965150758 870383920 776724913 329940719 441342541 974837681 431741099 317212951 492575063 391034204 905687308 92673997 879995971 856457848 946520076 668035363 220257825 393912704 426641464 39506589 302266521 83252129 861403631 970061237 881501794 904108863 338514404 360693333 836532682 907400816 676158879 510334815 523609909 43942271 567955964 939253545 39884694 363885418 119466410 223505401 101431543 774223461 816447404 711782542 875091191 692601941 662308828 603127447 88837447 527988054 943981923 599622969 251830316 471208502 922824515 262112653 903150336 581782263 881200333 423850783 163836081 312069969 48653867 758036080 283739713 233748781 448366295 113162613 423567172 352970027 255845410 645530647 128472165 756220701 950434734 907680433 622627809 385647242 795975156 82529941 884923914 113744684 85378752 559236231 860661701 532138354 763136431 857077568 891592973 83390719 611406520 654155756 319290734 223494441 74212000 26782893 929317514 994566011 573568388 817476374 454902936 444192819 473389907 510971568 946365152 772504772 98206802 879428984 51667520 223374934 784642966 91564639 422607786 709902401 686797709 311764425 2591395 566429334 357762166 18397711 857159622 187811478 474128612 996678653 144966975 165394744 158228543 835301204 768690513 893784999 411868994 845644105 147567824 586045890 102725758 527756036 759069608 324218011 415224534 802374690 803674452 111975161 709751297 313478452 812292967 728389589 175265548 146216510 334678023 671779040 295339733 334910264 377575533 302863612 491388561 532818577 285259622 525855423 879140422 8247207 971382229 900697843 19659090 178894159 383458607 283876633 92353250 339814996 292257277 830910945 269787260 10610672 234063453 799283123 802916470 972225620 523593346 559527721 580171900 192612134 383795504 576014738 578618894 774311422 874551872 627329905 846525183 502611688 385627938 549611773 652316151 485097701 487405398 832122527 607871218 445519977 484795122 488306550 648503231 313445342 985684255 120536022 933693059 540682784 635794076 540600260 931593267 89834240 60758586 944600444 312600349 374313921 336127837 535303148 691705184 490473374 132003970 393431862 296322415 120675906 56620467 619278642 379770002 433045582 843057940 947770857 733016420 970987990 784447834 720758811 635759190 514705124 887582799 15844794 564853803 858796532 901649744 58595437 915411066 958905975 400372175 256806414 29899824 547492176 924305361 737322796 420538379 521069401 152032368 393727882 565330207 274932191 467617370 686322334 415044437 36308258 646270544 471188499 264050151 73304791 125737384 412612679 932490214 155620005 537002700 10276046 767794356 764880555 245881785 804198637 466202250 287897081 176877697 183858719 635555059 869547794 676672969 470340244 370872143 446654064 888274251 824066989 521771345 850524416 9862742 178375298 462702466 158287522 132624457 849485404 331781564 242398890 731629339 669486395 534999471 224777826 129069526 624775760 957713247 635300230 488055575 595308676 314812324 961053894 109732752 553683184 50367144 348023367 999358599 670100323 342535789 441114146 767134292 970774240 38280005 335149796 656998119 363930652 567310936 176067085 994286143 694885380 327371809 245961873 428261108 425384501 179304689 490330970 276202670 22814083 834503531 470639043 114850987 708361843 105939206 318373918 400436797 557244352 865523343 214164016 995006794 279315673 933892260 291993520 636269258 171715169 547128889 47462603 891429709 115938990 873733911 358149283 201410419 103202380 81320536 593253323 840736369 993972855 905060077 525593293 38693522 356661156 141815832 643993764 137892788 87392248 924464626 948680002 533599175 213886415 743495142 76826123 150732114 154914359 9490740 286137944 455143918 200982386 185390959 761986550 856372936 916145528 631179007 508539300 922072355 421546098 405822368 706332056 336747732 345355584 231120097 441176059 811565764 759330804 442071718 724584808 491188594 720023637 436439975 636956529 338329455 399226973 868025327 80904986 632308191 2400956 545264989 518962012 514382078 963612498 22060582 653095332 670577817 287568312 608815441 184194641 423504529 107024824 135441722 348597049 216345948 348207057 131033103 930166820 789319812 274765748 164468822 454741328 413503781 536499401 309976421 335786475 35452019 26074795 603842025 831666332 29979698 657905576 922341984 336889851 735839036 660620610 30877598 284801301 556272639 205888176 748500812 149583337 75494652 403453790 598672996 711665645 260560201 637102440 997990839 377192073 123659536 318592547 206150247 199597466 616222222 971568789 89883245 652914161 578800661 306419704 465784084 167209426 869559178 502519355 429958524 504410486 436698087 788341376 973660440 749668233 774569018 120355231 936237616 553463212 658675621 295574178 83743840 898141428 272486876 23974727 219913495 847243881 117370282 451032194 589726233 918052232 650658156 387174136 90381822 828707522 891959188 193291652 870399665 88823803 363376935 614182325 170911729 832412939 579834944 793363022 468646355 88247360 616600203 265143750 545827134 764885722 606538186 935983302 834719853 963303310 829879892 291017389 950354289 683754756 427234705 400476175 767969965 823080025 385947263 410166066 404424024 982980510 434614320 496907407 8668158 223422039 714395210 218170199 204118271 286495740 233290117 108019692 722575119 108921979 390759473 356671587 93721524 878081204 233886893 33519881 77735372 579248892 845821425 796186331 942400516 964729243 438398981 526366732 683873121 193290574 981356168 455025795 755735995 902042053 829779754 157204570 818138173 483030054 869551665 97798240 140034535 468571528 980033272 589304984 79890956 571122041 373168236 723579576 882712788 109777529 134621069 930999979 92413371 485142653 236959219 161548559 5028880 244536684 811963975 319115704 839120247 82060197 208405189 606325803 967909992 855871096 749217217 139448868 100908718 652862120 57082398 359457296 452540904 650748656 157783512 634198420 414669835 831324794 323977852 229109252 248225758 173924201 729258923 363884780 732514684 571968849 849940891 60159627 463092438 669886393 54283669 262506067 463217199 703963296 219207800 656958827 937571486 835901173 371335477 226793773 75157647 96000286 485638481 194637224 460326466 797162354 548677990 683969055 489408075 870501055 409217953 492079495 781397520 638340805 463267398 911930637 827589198 672936120 798532648 142140046 402174357 562220482 544530737 618033950 989018311 910694782 503717088 484129666 7954845 515913342 687220934 37011125 948377378 270673095 72022280 49890407 944284726 138082896 608548064 350046073 187549708 365244295 936750364 948463234 94508716 370237387 579644573 768400973 723207026 952854515 999570138 797451865 644081549 547864773 999440987 887788888 434862721 105677696 652039998 794123184 901400229 760687187 572572084 933161469 423714214 65539811 19180677 582900109 576621314 920880329 717902728 592610018 6955150 85499410 657437740 232651316 819891953 412001213 651999731 646970860 868504102 428560960 776424689 887930154 206831614 736381444 670203985 108896321 351038108 875753956 851910352 313289014 658762999 717054898 53059904 306672196 433491291 152162994 519840519 407315546 60400616 999195677 730272925 561152923 827248914 560764320 741837841 403835357 245201951 107648986 111876485 210782507 456448428 128719073 174414766 148814915 414826536 195395262 462532181 251007769 597806680 920855020 127345880 401761106 437230546 231555037 78282409 572360906 916414337 489617781 439055822 700513295 497782311 730636173 62907744 548898531 748850902 972237169 40701964 987115197 672681334 383541091 412437653 883833673 749557059 983639830 439517263 486616292 429635916 263626291 59123622 20843809 674820853 939989719 629138581 200140614 328608374 887259667 435805488 807352015 618878297 622737515 503223834 1772010 304509696 423734872 930569487 733327354 934752028 979305158 422913884 680743445 228274743 478944150 300604002 290577286 832247852 560840221 523304983 294168139 24533161 240849316 268420996 599840663 995692980 152355814 790046024 523119697 877232675 731458452 154834963 30523284 663684130 620889300 672601900 685353773 733914545 741227454 181932780 914576416 959645988 386633438 999836993 506305828 107302817 946841013 210316332 277924130 136007589 294133048 815955011 565611450 544926080 305924175 597809967 223634877 67048916 36597335 874097711 45947316 834991642 887357345 576025748 600682072 331763484 336436721 204681283 824956184 704927100 948447999 976583734 27274390 607403052 926352121 747676411 791351082 898195700 446251775 779933491 8041821 595783920 614187942 3393044 940581487 838661391 251944310 608403432 584959699 657656469 857941356 842844300 453237422 11862937 121475449 535501810 172424795 424800136 749680896 7122079 344712937 852750752 874907996 883247662 957888155 858957174 854348888 438365131 813989735 856786801 130514613 841454264 947218808 381248844 688608935 473702091 372974509 351135384 354559064 46542062 517683735 458340663 422518372 919727006 460628607 182184419 615630940 368387949 558605533 407312037 910648643 91610497 709801954 760912222 407951380 101533714 717288815 25417281 636939834 307115247 841876252 877220439 911430678 350993402 247605426 607861242 926409596 78750631 57024177 780213082 276447286 653833089 909807819 540054267 678926976 134246054 803305063 945735733 669017994 253116998 230940959 224527283 179479546 896048679 827667778 91770356 759844967 922913572 738072659 416886221 69312991 481354153 275745160 869912293 776748641 58935353 981337163 313389624 878377828 477336553 795075773 882396821 630128207 389648098 377846830 664598816 838317822 379242210 477308326 422507472 185769540 921500604 867929696 169080818 754248803 918900179 873309769 174404772 941851541 580677283 661162629 209224539 444567175 834170169 938171371 342860894 364339929 801654965 897077124 807729992 196805535 70659279 203566864 531785610 584455139 735580240 488969600 822529254 379998496 628465556 594265469 325284341 656938440 36175119 490580960 529565346 939974080 501153220 765376056 864258221 530257631 624433615 964247879 542516778 643535730 4689629 483453829 413844479 320353467 994814639 864753564 886537321 456019309 510269851 536056042 575951735 50499634 723009803 26821634 674036110 416776741 538602491 376554283 503164899 231969624 141412735 854565599 481328900 812005712 215406907 971869773 881247056 175710596 909264873 232878552 209472378 549084641 664600535 339575191 213369610 392529225 170344294 946651603 594121436 350725135 314474892 279687051 131121567 823752828 962176083 152793843 575862358 912066894 28089176 411552752 224759003 992635956 795308108 826685086 275252311 335909459 858448759 450535371 315690443 34496196 351672880 244159865 363408523 105191187 78756198 883989343 695291582 713925058 245567514 566765417 972786143 333657284 250644450 592252980 162666815 45394946 5380456 160857491 123107968 697545177 222926569 324104461 681924635 142621082 791455927 87052892 459665371 324317705 449857464 699824111 773882208 258293727 562895332 432779113 380495006 467019848 672691402 981540895 430246491 680209766 14992396 82952606 951367348 628028620 496361438 994176548 689288088 73630211 270616971 195628834 416887115 12336904 640491504 643916224 552869605 402578636 549953535 115080025 922393809 662253491 974802238 739950586 115722575 499881494 819984965 194351847 183897842 853905601 758032196 483839767 246946594 939928949 319402618 930060211 593509530 483733863 92525759 555796123 864568811 100724671 924801019 681491681 609145336 685477914 346853292 122185035 815031416 574516489 789814117 666598101 23803512 470077072 68096329 418155309 546063062 192277672 449347732 251413814 895409863 645202877 649276434 16958853 319073361 91309872 52267686 838365927 521911506 507361750 584478149 463703769 350483831 573605495 817944056 930701838 61243846 288249936 454246750 116627693 999035925 15802769 965158439 540192785 18167824 882593248 575620890 814889671 454766903 25826005 522436624 522600851 760073053 428201084 434392694 482314923 158779690 421861846 493640143 795328634 745993370 856639831 204237872 268902431 845170044 261634409 560427203 771960811 355194357 429614824 623064132 936727527 422186746 165892517 136191879 654805580 222863065 291832036 834338288 449043464 320653233 541885917 805123577 858036032 507979764 779424318 7247792 18210248 316731116 210178727 832072502 69984685 767074100 290542380 886427969 952081324 129835323 217433559 673196442 874097080 289830853 590988068 975418784 667449208 935955049 968500356 877220036 979986118 458430483 212634330 864320779 484678705 400308100 569248001 562466191 313437052 458145229 571362883 187399934 186164253 450923224 61499107 939324953 394350527 694980575 545110677 92280887 472765632 77390835 873278721 218819519 474674867 278008950 98085955 56910513 361729760 234784161 62689646 462175006 749061311 408185087 489281284 842808748 255325313 61676016 978111359 527661587 775543175 99960871 829088204 468103074 327457512 712173613 459286987 630453690 853138928 308923356 206704336 524571218 939145883 829521124 862726181 658220146 198093854 314157897 270248326 179836600 118490463 134768098 317130659 291769302 869362040 133592796 830848673 491171601 220936760 893480502 242141338 883669700 101542561 953932867 973719576 791424731 423751019 678259243 9794718 64604505 704804224 739052137 683781407 830498002 552230014 734520142 62779013 65644273 20419384 699585917 676708907 544357107 154004533 466365549 255285860 974468139 150455344 768629482 668642034 854477436 522930838 409098133 656739215 196015842 418786827 161554271 836313703 94673897 625080549 288672786 204257948 165388340 981429167 51876040 60567745 198506744 270091176 480059506 914451296 415041662 526167361 110067282 22583156 768487588 351732899 77693057 223904495 29028701 199751719 195445354 830750006 23204140 51105499 575701325 26742176 978323373 880379140 296335549 17935866 171997197 613932182 383757602 558904581 660430221 44309950 352428600 767844599 909922306 868624217 276283790 445352438 466926168 148519802 322653960 788090528 353052426 271933416 873969502 679008902 70026412 144268445 938175131 140663468 873026146 702206024 897452702 583700491 997524070 104087756 873842588 564280336 381094022 699070399 324914844 277114650 503251107 654779628 884307450 216965887 326254387 44478673 127777764 549581192 122540991 911490338 372134624 265791728 140881254 147713348 54018116 104610921 995774808 592514259 49216701 936060567 476495197 768034332 280285385 569023506 522716236 717319843 567654716 943408617 327956116 394746783 988992959 323151898 292137142 254407801 946832204 971708443 306150344 25079633 296565940 191685460 846426612 889791865 18143001 655065506 643450615 764477432 480829556 997705686 748723362 451768840 322109456 656881716 242348380 64742296 560426765 387478261 700284063 288059850 814918878 636904133 930308471 39072630 942278091 940605765 441356038 829728678 770025840 265684874 401189634 839379480 990170428 415689884 701517877 640971711 241773299 238544888 364513020 599698242 972290861 382947855 697422281 768844156 949123028 964593349 307606946 79313402 598756010 783282674 218846367 57244032 820806081 798542308 57159791 883328132 261039617 801438172 226112212 624213425 971999141 334481036 794987554 465092710 468772030 363161247 296256452 95813941 411696047 316306737 651283128 814449764 822110639 457488979 668674062 977011311 338245962 865970569 606975340 224498308 649040608 439820875 593378701 901331205 431300389 673107591 705835197 875141130 815480735 607891229 973345119 532061660 129307948 319033442 872903783 400440187 213242489 569671838 278574049 234846490 72728203 683300494 233199976 567021725 195989306 125235682 668767407 562917922 226028977 441877440 659942396 620420213 872903408 435640639 511093928 535613850 45770826 941401581 848509344 753821511 254202855 772722762 31369191 415171431 133415235 62059083 245499154 151540376 72975789 610457048 499025354 238446766 29989577 958540109 558493774 314483502 466649871 127067645 649281262 388830163 459309641 225346730 300023953 65087245 402547737 948722703 254763312 549091453 945014897 609996630 577606744 947131771 144438297 840625826 621403052 946779024 506751276 876752775 174526305 433871100 163053979 342651789 925380801 49756977 873250728 676568240 172660904 645436758 60743789 64108003 810721802 977217221 703128147 645937032 990927467 44687757 931039643 312956921 183277157 49479408 500304088 923584003 368425510 852515814 776026483 853914982 471571951 704257945 928500774 37705558 560235158 700330983 992496514 997164797 34449413 513358307 836918377 922159606 714874297 838889045 518496404 149508308 221595971 180681269 818411790 8291225 488010954 154838323 814815926 62567999 366467464 388052018 354696898 12480819 244119625 538937289 436326711 223794132 508149743 917242561 906501490 495375097 898552304 481900186 517194402 688768872 686888662 778786309 942937675 457049184 252156606 380331883 850713284 626721296 427559898 760002917 192964026 780725277 7717103 446516545 149346987 32893472 409456600 199653764 82819948 833597990 62423553 56728163 479654564 950199598 675455724 639373896 942673998 780969391 797449903 195606099 95821883 949672975 400029300 714590422 221134989 469114668 469835513 304593880 528516670 114233047 435368718 854620051 756397975 524078677 199062553 45872887 481161401 860063965 547253397 882283045 847636503 857730076 873173134 166540532 631701754 234251955 907000870 83345263 604441596 491339960 739192852 671078484 415622029 439063601 896972832 865632663 448079986 89588124 931289000 960190685 500195392 940370026 247597087 50572802 639231461 405361535 54256008 421216659 363483168 157096372 500734207 366237012 858651140 966221398 17010480 758268092 449455993 792727972 904714462 521781620 21278651 575311188 277639518 2816988 181970905 226011406 73904921 843046278 916692791 532721903 398561806 459125689 640714765 933360648 690820685 660569071 378233829 111541981 518942845 577699415 839566369 318198247 219032151 410813524 90436722 828225554 39700776 428748540 545786722 384921408 10055251 21806489 740110027 96352451 423562189 746514988 33619038 565289959 720643231 732270053 634879518 826008166 166538600 502111148 919815906 960112370 345339096 387889308 777097430 988391854 773105718 954018434 266186234 95269557 357085147 816660066 190687394 17023634 600423861 487607026 18619892 38243014 284230597 946400030 911829101 434554438 129383585 37674626 503122012 614448634 795855859 366402547 550393958 741355839 749324024 684650999 234477568 457457254 819574017 45137223 409764344 478818611 641858037 171770708 423059693 506761054 742639822 292828352 346982354 352019734 431280151 819381728 740913775 534411129 718576757 114094401 462133728 290041628 462995739 136237600 242112276 899601033 639634004 389561072 669638991 151396028 178264573 800111064 313680552 674455462 417963527 629716275 406669964 981806763 566314234 993027598 367081529 624790307 103577709 265083053 696788804 780963036 940070799 468757766 659672596 754049686 129770913 285268804 833952868 144651910 467297914 676248645 381251013 12915924 793455874 531742237 182493209 202905628 728998839 967438993 895544857 594124273 386740523 160691101 873716689 766205270 988157059 789784559 370294559 192932675 660561402 706805097 743490103 630946086 710030172 662980002 976849441 475034463 760694923 751492198 866327865 190033858 309914622 105045042 625338799 423080985 280543037 945440953 895661573 520357024 45635430 804073313 975882132 502341255 866250155 76344775 583001351 54727284 752280530 825122871 10347229 294339326 507560115 227204660 311134187 206203699 468369598 167509750 592077784 630612755 434463346 721783271 522663328 69230610 922194151 947983141 918778898 563277210 793713221 451003908 593723474 908405127 365853259 812479369 277287511 917104809 442239689 249403119 701819246 226679621 875196454 223722022 332634805 19236244 132193242 678053455 265973153 989403203 374508277 687757889 53997177 387653874 41695383 118048520 765708504 405255861 549335158 613391456 785947183 195425942 149580635 794301758 210654784 415350800 485679525 623854664 966503332 918822294 382599108 710304343 963365958 403025162 637647039 213238524 781357030 33007174 799268527 747479289 195826328 879085975 434833730 790575300 523010370 261050940 419157561 284929287 264100897 967806187 318588905 415669538 196106564 414697549 55799230 220188584 311999248 401391486 965008052 445535966 993349818 924689550 853013468 622640447 355958480 613848322 708849885 139120122 585830321 428699731 821347440 599837042 81911824 469904493 105481955 970348477 997994357 335689266 531524247 710811942 477961915 636003317 90378371 856583852 568139411 528377855 955746478 675947136 456803840 40769806 277384376 888614027 493539546 828565713 245588050 940149477 248547915 393074285 618430913 306463327 517701460 84494075 58887775 890112762 177660745 466920455 97581338 295104622 823802961 216042003 360564468 183004324 666432999 395781394 755634049 223238204 897290588 648805101 400764268 121413384 229054546 476502530 685292786 85109391 518091586 435196319 623190629 674111627 179975671 906151563 335923882 779694443 711426065 222748030 643050939 225431762 101158276 840199589 978526503 474113558 492849430 993841439 46232205 593098946 852147940 292085122 472877604 119147796 148258013 154639446 195835190 34920576 704165701 116433816 79911073 520725035 349667636 825146425 148111701 724185456 914577173 670413469 756879064 264210015 651059495 586090269 733154245 12531257 373801471 903472261 709368392 302416373 577737476 746939030 551682212 952950463 523257586 202086021 24303533 526502003 592549976 427517818 859808078 844547110 931151386 848835347 806689541 38430366 938525167 294605278 336880738 280484053 511342308 56674786 934055820 656279674 452634071 186878743 964092859 189247599 177990140 954108905 714899391 24013644 847393116 107455417 939040376 984018395 894375761 67284828 468953435 343263642 891545356 563101594 657482484 944161084 585009167 358041520 183912286 499763496 943468211 184611791 708578509 959922680 449428132 379875738 142921732 384460028 443897184 733072044 497253087 283490485 944605371 156848400 320121035 966807386 180113757 865194439 108847433 89042774 743284034 130132806 718449775 280625607 218717753 152920565 929673062 709464833 861969510 249052337 85142253 828198154 101523137 126370634 349683668 93815835 187218837 756517126 675666306 85139749 847097089 568101148 759889008 788891721 732267386 194317626 762470572 250464607 955085383 696080384 321975895 711809648 80436740 583112067 274523175 103636540 318594848 856221643 409717222 519177397 897783391 39581524 67299057 641826178 770839384 944905617 286999737 458059389 883798263 928956772 860004677 48507446 350302205 16906664 190524335 823370861 394204539 359248808 622263459 645530267 95592795 71083428 278342883 777637994 897681111 174752083 186191813 974874169 157158656 551208028 824405939 935885209 213123384 970110172 776247466 685082578 734531512 385237475 138980028 326631519 596765195 423837174 57161358 243290989 973068689 529780623 532112346 280612960 886714877 961865112 909347822 842605647 673544664 358570996 98600492 388782723 946835195 698422775 961132680 582396 602371865 110857960 610012685 247250156 381649459 768751238 277338968 812747577 907498785 450203520 547400475 601296127 48894992 686412284 538462364 879329804 118621439 324877329 348747827 922800483 447466561 745685068 863829455 946585018 299484413 953772591 712878962 560507899 747223985 88250541 67606448 397488071 324356267 106440880 857899573 241932782 130734735 838229908 339876924 436734712 327048916 521637801 557818136 970545055 96821318 168178868 406497455 801709395 825486214 905969262 158539769 887929525 447817605 515447556 138242438 979042844 913009677 451040149 258567669 595296275 861688376 123044535 116695166 455028696 124599542 410998515 895866217 646246367 239108492 365423428 922539157 243745358 724150288 589117852 987979250 79084414 107214318 87289184 710327303 322074752 412617830 459698663 200101485 16637846 316819211 263086846 468112977 668944053 330057797 668758887 727874294 684242442 102685136 122691413 554640433 627741298 592999739 669652209 858954475 954307072 587873898 591807193 123092899 238016635 948221973 35507356 673597673 151069149 944600647 924741439 445592548 929439445 437571295 639680955 135775949 630387526 362790418 910136700 429001586 234935494 705219303 841189603 935958452 517483808 37873081 406822341 963191817 571918034 161686713 862413803 55664122 819498895 752639594 360173456 418558118 233917631 49373731 624962534 314612030 900773370 233949841 891331473 551610247 21463953 617015346 432567594 17577051 782977797 907935706 704571837 502069288 45895054 653894962 713288523 393549167 554475157 582177588 655570249 748932422 407320122 855457457 653369631 404077527 270588367 685142219 144337067 380826335 503694938 632399739 469850299 432022064 410122007 42982924 478070166 905457711 913244660 488429982 152763764 675865686 563272212 355178916 191901953 735603635 162482765 443742822 512897502 464604520 193609129 343089536 493879072 877793577 909601769 282332769 356025295 471475649 768439293 700380365 559702888 915317645 200159885 534978396 468602972 565465343 754937971 724149240 702595727 338650908 526415679 521033315 97876954 379779583 292484530 227264687 648164489 376418644 23916099 298210756 885276637 385659613 239548317 787601373 632608907 558355185 752442143 783513867 465371451 492865784 510112090 587884465 99510538 927778800 48735895 466089222 366027272 592804587 166896975 782829462 545999291 157898127 315978416 18219457 49016218 821869204 230946079 693365819 215824787 366574665 774387889 821192330 440166022 641013008 71339440 372372875 677016264 678380510 514074908 858105326 603646625 554315452 627790119 23979189 519759566 103166792 396231608 673668537 188146431 933729589 269291241 88707621 227856986 780332742 909695369 397810425 1555959 473016151 311986587 528350600 176481633 528561620 453297877 302065658 256671003 923328832 714743074 630833099 872856857 982534960 29380385 550180426 297662275 515963981 781821091 817733403 890003446 625786582 721512753 324210358 821647490 75439899 915397251 459550949 618954669 948755459 925846794 70393162 334316590 740913031 431723623 124770775 896354099 102689077 608219121 600122707 265517787 964077742 831984948 18922972 510825661 562260520 932122733 345946976 294848096 841643244 789290767 658860066 184370112 759610841 10874944 129751868 943141840 839511519 563438428 191650071 651000050 483471493 841314417 307999732 631325568 111973988 809029314 757640294 199909447 942813610 124772165 263713750 893137671 299206808 126710565 60943102 751606516 620416516 747338816 152253550 410486072 810831320 808505257 878285579 126260591 993546129 407914535 742537355 685090857 72385729 279759029 649624058 189120875 696983949 285680896 833502263 115220270 133845295 200891884 944730231 240034783 572867189 704911375 160379586 74527454 38709312 450340917 581260913 741370111 45507079 706835418 59075254 308048139 688429649 966058419 206593812 165334080 435858238 398488101 726679011 448462029 549484799 359046092 315998926 947158615 250384986 673092086 849580372 89688695 772449063 691142438 192209226 271186234 542871765 395806609 906026327 587303327 27296997 191964068 425030006 115630109 246230894 958182524 56191352 211750170 27713944 491606124 268247935 51340149 444818977 386155387 283052165 19390205 579222491 552561635 11617491 149552375 728336427 86910099 587445898 537678492 794015116 161000878 245865501 735581080 970848266 963575562 449868501 129951373 405480904 528408754 414511948 590196622 1094010 660114789 493172210 42728100 749114092 90636564 461157772 236232268 678456185 391758184 847041967 882896375 311159956 318082105 750285641 311952521 450271811 722049560 350873369 878386907 347183006 788860614 620726834 769999418 943133013 42845115 223699580 189463781 13377576 990992544 340662067 291188370 22093164 740789205 319714150 660655337 957784461 128952556 936282233 13833736 334717062 784631596 371740835 997267197 516872810 943576591 423474545 352952911 825724895 438512068 964889665 951434358 431512222 599781293 21607624 207623262 391924213 445093602 711772045 240712681 773427012 714089133 217431147 358923882 404807299 418315020 44563731 394921258 468600507 895481651 410919304 210893286 40930952 301251079 970884257 343995215 7179934 517242019 955959434 514790793 120342593 944906455 735451459 947698348 922788299 420528036 49585440 240606534 400082218 187088833 384934727 384509144 502757983 682808345 295945781 653973076 317723136 149424715 823096889 791830182 233245622 200723753 684016120 892584744 805030592 607118649 108657383 88122923 543171695 865286967 368954836 835436405 565954216 786149521 567903582 519129278 316918373 289865193 586396792 480660018 994322996 735965591 220804842 255909618 276324022 381084709 248013776 756938130 181460257 104814801 529835033 255740061 939635647 960754702 854386441 103270669 249690221 714931203 746087095 251699923 862955293 892249354 932740752 353716053 807516244 887343666 445794770 279937002 500940204 741701566 930561042 12104800 799212627 467311012 182650807 577921911 895480715 8612367 393312380 588026724 863678248 427847134 271152626 285273679 659545109 576021795 81279995 61014229 757591759 181590436 250944336 349582470 8773608 134941021 23702525 331623528 977030277 651437819 85043680 795283314 866312929 147600483 777735981 608225554 75620040 793637673 344561900 293982632 749171741 176248089 20586361 266746632 207496020 399859378 613561604 415449852 253099512 624420262 577541647 220423616 6555430 216340828 750231539 637762180 523075601 16287086 791576411 709221358 395672188 397663787 898135238 789007509 10017091 878801686 906106121 607467399 230993618 359134053 116033995 278318788 548853676 976215683 428941832 378653120 382167269 303863950 535104143 943794149 851595433 669736153 164085380 790750991 634831539 678328428 128956894 644611598 524969686 405295743 812519402 747561767 648329080 525474563 202069958 690621076 533296146 822575385 427604711 746837247 45214641 708364184 5894548 816732171 594609528 61348235 978177896 957673163 921600284 574795441 249596884 472061513 346345830 700425724 114816666 873164801 530084533 709283346 777624147 258925667 32823673 979970511 760254698 388071764 835880121 955993281 624258079 374221997 407118990 352324523 942113286 296916667 997992102 329768706 742334341 117509821 819216578 168153459 730559193 533200746 984036152 203436123 373156881 733269352 91152241 618990157 145272721 10481110 971027564 805506448 122195601 506426563 154309946 92791454 825045404 25635252 643708288 933200551 569284882 255641122 290947064 591148044 354517414 320391673 364554992 749492964 513175264 188098075 769836745 374418810 772013979 459221723 216724601 235857612 917770888 101787779 242913290 833510670 336491690 233438670 641021209 456577061 875038169 162349678 799488855 994428461 484875071 378078599 594600203 413550068 644386781 494761522 549002639 802552700 278684423 997478907 981732303 200973949 733695204 399352676 612301517 997078240 368526063 229262944 304544287 823633221 797977721 656594136 232394351 744010622 740700964 235628842 839617018 856982290 536266601 187792037 731654930 817333179 983167251 198381582 702054556 697830888 132241858 679586845 532884627 805265724 19325290 108626433 319544451 532873997 143177937 248621016 297809422 290627814 410849812 201406776 751212907 922730757 330019106 391258025 905384930 507834589 509156415 729801001 50826833 994673046 424150147 698136742 304521130 685860488 456691801 230641287 523730803 916299204 661705216 82787620 138950724 362440331 426707981 506670409 227701324 299277268 882768359 533508791 476213709 989153994 772478538 538438819 600864156 38213452 907847109 842142262 593947042 886367852 952197948 557402379 749738845 182205169 180355686 954071987 797488223 714923476 692301392 382056500 953956558 14253766 414251992 565421702 50263011 687465641 547400754 932160789 941803627 811341331 641730407 39647042 78810441 130391502 409684177 97668578 575983602 48775002 632436129 202871741 986706159 230954858 147950425 635437072 716489823 266418787 557220434 434569484 269433458 634734304 339190840 417062996 432944623 204028976 420798600 878669699 483496111 917525206 74945305 307155108 674072607 374224137 625342096 819900088 331661250 582688562 283194090 796205620 413021101 530830960 853110262 463522176 295615754 998500119 752601048 850872697 487042709 409357612 357161352 333485039 67823906 108527339 547522897 916310056 138821653 213905218 137540946 663071579 852379624 309376595 315149312 10317622 500553384 132640246 750861474 186756697 12669049 948898868 818588116 229913817 445656078 148887501 551596037 163844286 586021681 743411891 833271289 612497029 847647041 586890381 799338311 126955422 842792367 59320117 234027227 545667311 101329024 80258362 872936821 984358223 3618510 658682975 856411689 980299788 651739463 872734234 246026462 917110118 239842476 397970966 393809103 189936913 225720403 769018545 513067277 508351671 689129638 922145151 723483386 375042164 65964450 375655365 905280207 345384280 711575385 16256254 90908695 403559400 330586736 337724250 844405810 803624606 459725986 105309242 575685331 710935140 98783547 673591990 914929794 708941597 264079261 194926103 943277851 236463645 595475903 854372445 340802638 579318443 726114472 1749689 571609117 821645958 384022777 976226324 184616288 711191645 821853537 430822279 122312772 491549270 143802150 575126753 133487816 387519112 981543587 717459749 469089598 280191872 485889988 323149576 315909328 152004288 217647755 591193463 191106553 829288764 249791375 243898895 757391624 86990811 126028920 913093539 856179873 86983676 40852612 855451835 791125051 904774638 796980997 844827663 317596322 16483702 974965729 606060303 184240758 298442317 924665873 162294366 912170155 569538720 365206050 415033938 927387912 828668302 755720887 270234999 200986792 292061614 107287300 131765001 617885819 767591814 104723797 819254653 843338182 210595861 725658501 233913592 258173599 528413002 488851847 965881302 242019954 415747210 92043233 154979109 662882943 275672878 227088940 329849127 74420825 863250178 793576854 874431956 822307432 269541576 835602783 547910997 522924648 718676147 373575519 338107018 507478504 307376876 602922623 249676165 373014220 405209105 248248635 649318925 344736204 781232561 788005927 679603228 381912819 584092369 491024487 192585826 590427168 373803114 322431029 963869375 582077320 343157736 179965790 565031628 72583730 299574188 433577925 718069843 573803641 161690507 106448863 86869971 589849742 767752014 785611062 478074621 732467956 298562352 244996839 963097401 986854146 288430691 217095203 651770914 58952036 144152971 392576177 311890438 208348315 170464577 904916330 160088167 991384952 627083921 974713020 979697276 57777061 179573628 968299305 912757169 769056796 853266295 675010501 201244194 348563885 358079979 144030394 552041252 480123261 378584243 92406215 498664893 196993922 132078240 285735101 993730343 790390536 509355512 467209217 228405073 340794671 928864499 634106638 908187485 410722154 34016317 997817584 888080931 46403585 681442679 163480777 577966765 358484112 254389174 348964431 268356793 181117574 845735427 885994060 600153915 41895 139703257 118652701 524362968 606947979 324506537 418721076 250506859 238600476 477132121 876677014 17003907 770355996 575934145 619980894 54368995 915122333 423534125 668422456 781150978 819155078 458384606 811441639 563426953 983053077 375843209 498041535 562954455 975531096 168623830 207206187 611800192 887072434 871813090 232725544 889773002 720906077 208504509 861031624 51153198 416420066 993852141 963435185 575966685 730436002 85404650 327117980 563411001 172297297 784569248 877842134 884567127 709096565 693506288 549320642 103933060 359466731 612298286 666670676 282891197 544109155 501448612 157033623 49800757 974654431 282925582 694273065 805129171 189614904 996983069 120664250 111923377 877437337 157481460 827747473 199476126 569962498 719290286 864844038 941012637 482357702 29643734 469713161 208206692 386060557 286522604 683491738 449360350 838470483 872871143 113561166 962710697 245221351 177373102 485583313 144851865 375292013 717783454 244693086 561985587 62830429 427469319 819411529 16781875 308807809 731848623 707115126 577369094 572359547 796928845 17057503 595885905 490314812 55454735 691524881 894289768 236113806 259225621 32055471 644420055 519067532 575500019 785451502 838407901 81425445 98962995 422108696 258370540 284187036 915193297 660958217 788084779 398227722 367161021 395400373 134099188 889357019 860362076 813086112 656576086 879073613 857518088 736346468 823414676 58869492 770320779 886271535 542290851 241467705 627639720 247304770 680823216 61122774 762442642 376717427 122699672 357399131 140710003 193981100 341743215 423752877 87439335 166610537 67989754 784719746 52217470 874033982 884666932 496433637 669148221 720341327 365487053 579412152 397523741 594423254 650114726 311145261 375306123 523373473 411220822 734746445 790302439 323466130 420754600 725150321 79587845 534823197 748219419 772038091 334916015 55761613 698692193 207604958 786689312 906640063 606511584 779916802 32083082 449407781 726177076 583150305 891896721 649720516 36705707 98362109 43760079 341631862 484667847 864721960 12346702 469719721 215475136 413577481 3023633 560933343 913842687 169854366 813006731 918423340 593079716 881455541 413415717 306222523 125456130 470385009 619531965 472071241 316646430 160185291 905322018 261276584 362491187 686229263 642323609 536115006 740931888 96015195 125991771 6062979 836739640 423633187 99601428 662357127 21604385 745665456 535463782 901671017 856341238 117115292 806505828 162073569 850152821 432707927 923551767 473187511 458023314 821277605 653609469 474876489 446851826 566596126 857776261 362435081 218019185 437923245 498790036 671851005 784143773 327210258 14820611 159600446 816764216 672243552 584575774 147830393 644641209 302450815 276054310 460169329 72905420 88659371 243881168 166035067 400870094 628849651 891020741 50648832 816866129 914060987 932703776 279545342 923280798 350943290 168823027 418244488 196252974 529115645 517505730 399780930 817309232 394228066 704831493 416557541 881875463 506888734 314737067 949803457 124261321 59629752 899120018 167990582 285803713 697130763 692113680 665983034 450850029 574744264 164538221 694151638 733564800 175425010 997848166 960949929 103587681 551923552 823960748 230808931 514502571 270505790 926664291 636430667 442640939 437108620 676136355 723824314 714124773 751389853 105630971 984882590 580883856 830847898 10025961 584628216 406280725 92931837 757981027 226337374 333345044 172723990 559546449 947367034 657370462 610729610 181874192 81103240 547922300 574223566 447082224 538537180 452772903 91416752 679873207 890803290 329332942 756184783 509152541 395211516 451792915 126864926 946690638 899492688 368245326 548638309 41433451 317882359 169089032 58237632 821222665 375804968 129806465 216194078 628007856 131964970 140574764 231330243 136548445 178213341 668181806 682331590 102586624 538812722 223763938 356165012 759805695 491052718 544430423 227014251 505406385 622137324 107834320 802437088 909065956 654581784 307932995 902085210 443636056 854300788 614265307 891015060 821312834 910740694 902978679 381695775 475513034 114857512 419500840 725656285 270837389 387673319 869287351 908314503 546720795 194024357 190558748 56913192 647277690 409242504 363054856 484228000 346613409 112081608 636382812 101711139 191145470 149489461 352946608 858502327 641686769 728889006 390543565 898558649 655875407 716140459 392779315 247195481 887800031 888041396 896346516 571987225 899611104 720501223 798027351 514884434 581968258 298981750 597424662 310971566 29827176 813731879 639943968 890245551 371693868 969555154 140581624 286690599 772088539 400485863 516720340 465902782 434222965 721314789 683347998 6124400 156982894 93103076 280138487 119341580 952930096 320778252 954271407 84332470 901560215 300490780 119457870 104752229 610889331 241313252 477470991 723419494 494962185 102423498 989072095 354247127 900215443 755163465 833647842 779760941 746289339 464745326 371878383 774198702 921973796 335648602 917727503 415271672 940306913 269792962 86849026 272292984 741590268 639402098 589602233 304668148 721169137 867709637 600939741 847472642 731694128 230055983 548256327 848255630 919671966 20983220 341084550 221054808 819439124 155074414 778778460 8477812 648803039 48532746 879221825 229112008 331713598 481061451 265738975 132662929 84943592 439959942 14277268 598119390 34710403 164436517 11786739 324202259 383358766 984017701 57864003 124505448 507215864 699327895 950121214 73170280 653574502 351412514 147018835 545359219 478114545 876163199 788456357 250623548 297784966 647197692 71491339 62185291 242749188 22361594 5593806 434360699 604131009 182904687 823631341 406944637 273744902 450245733 149956764 511248980 475877774 507945593 563331264 185707991 225289995 542943069 935700085 874600243 12981665 794046806 676035720 435855206 673047145 491449278 858844926 181015493 625498352 522755971 727473035 464153207 848052149 159699878 633151516 512738039 229628590 887963070 240505678 378339478 829403588 387915379 519229684 826468598 952443730 285593603 784360597 544618128 597818538 643726015 788742123 516606767 479109776 837503375 504450917 473186419 622727613 338253930 306202789 231181903 902199133 158432991 980445955 566394252 170202001 929398416 90905097 612669508 17114606 138320305 714025974 894159975 655459836 868560781 691120187 590968377 570388921 708975873 985473536 470140626 950352915 807134463 528686240 427053725 347913073 864850701 477828648 290302425 834901035 438952388 959650780 704397595 699698445 357368657 707864755 223818698 21525977 99162614 950270934 172860066 404418 920362122 546008357 316539954 507773425 37457141 200511922 842212702 644980739 733519030 580036163 935613405 362856073 690982237 934923220 766324411 746918790 3974416 705594899 890368217 459516661 810703114 487999971 822935912 496693057 430813208 604099545 165645426 781357003 619201818 740609218 455567185 247583592 999957384 1423899 780502838 233222368 562345450 35651223 471519139 95696752 170058847 324256413 701934833 682428745 428144407 560513736 24039115 26244623 23132377 338123877 221096113 820659546 315403646 167390200 530948727 382624568 563179636 965120951 368843459 855110825 750650172 655171085 925038482 354938914 228831723 287195673 956447411 674176523 530836909 909995052 894517834 351794497 207920446 404233807 991244623 144933268 92875119 946863803 51176973 89983050 272317863 486036062 323330211 245843098 177908831 893568861 927682950 547292722 879116197 177330572 609317373 542541234 83408282 681555192 951661732 757388591 106744564 117030494 473364458 762497201 806084477 83323313 105181842 572430517 482743954 218385048 260020790 723357355 642580900 207795437 107529151 262674297 307948218 192216895 91272686 557270518 123422446 819368273 516577239 345071984 524135659 411248793 944421729 310922791 819445110 707176129 184377287 408307663 883892706 265087530 375811097 777723922 417718426 337113188 134784956 562774284 652904347 325294776 452151014 28454861 539019510 387939998 810354979 889431771 849291091 331532871 799501267 740840109 128924265 536309524 205818537 4176945 831722887 655090716 359662637 503906118 554418191 609050794 440722491 634703683 916991989 637278909 562190466 472706415 782837828 396130183 646158599 419255686 598385561 941717999 342382239 476621370 201061030 338763535 124595576 558253488 494150320 952245430 88253840 102656511 186647570 393011686 88627516 65680309 893863608 89385815 66205091 179647057 447383717 831090675 914437953 862231242 747580013 788787032 812078693 200742918 911939003 554608217 48861618 110041444 657043917 888924541 825543330 187522355 774123507 340295039 792391678 376560440 298365459 866584012 362410087 823556908 455027496 106443016 510092497 918934332 123154366 55163785 772773123 908533895 666779256 741742042 499678232 254347172 421946507 984821050 764731136 36074265 925493312 271684634 651739392 566499301 743648118 762595491 53012014 415303671 178893853 278144302 358561270 560777908 783452348 916844745 759587735 434690421 896536299 685327801 926401703 999848454 372595674 348740082 742416779 343462697 139524297 662013857 859419136 208635153 874947470 839257507 265477525 107117544 23654162 662900235 838964782 57579081 255911380 532367008 463121539 726123974 492405348 545134428 744722590 979221347 475432425 119746798 54705761 737807897 540717212 727353 620357630 485710676 679077451 363745747 159928445 365871478 588443863 754306695 324539961 570832466 115255478 125618643 769356643 300869553 193248113 277009771 618486910 496410064 738276903 358013620 667849441 281128416 483645449 101715274 750227256 722095749 196896476 289256826 44171268 325143128 164196218 446111944 197858326 479289445 253011025 7479915 404630296 26298029 15021538 933836236 746210308 800036005 914685251 119239435 248826282 77002166 674025630 795083642 1154863 910198203 503526832 653284384 297329801 932021638 381485130 895227959 641346308 193645915 791728340 955887021 689057727 510246770 960768709 771276711 32545328 98657401 749990700 587755258 505775260 751285265 122787626 622782129 81310368 193273164 636718198 444397194 886340011 771857206 288725464 663600504 854677889 386466121 845832110 737280034 426768569 274464246 500396650 688615779 415981888 868050211 556367633 608073928 645135061 68406952 471189437 78051093 256703370 30688465 817221661 967865536 130911305 77843679 789528048 782834804 524721997 86859143 582039949 336644496 681064613 826507121 189229663 898990246 194764468 592658362 523162465 203800572 816845492 514955890 272605094 460106766 9014062 670512927 179666643 357179402 494919811 925855545 637098403 309539410 531620711 576579756 295272546 14745854 372400992 665424473 835347827 108029527 523509067 494045844 917099979 548684637 758504920 467676583 418330483 465542211 511525385 783252558 315011593 421473005 825122743 78015034 884350271 772151161 367486477 538225806 539916635 684450995 684758027 966466149 201747382 855346847 708257540 719968074 578608957 264040691 810213664 446472638 26068723 952739226 890513883 722469813 9105005 618729778 936551044 600165657 300046932 843726735 871086783 278694470 984781543 19703350 790164739 317293708 117624950 80106722 184129309 427546289 634160616 95478787 495046828 855640428 778988854 320724282 402674082 832295403 97250286 157649887 938087625 577528910 839786417 999964027 282829884 727377961 540473012 431701070 879334889 691741446 850142275 858838986 473695766 847310561 32440122 592774422 380125657 739805354 261822090 217780620 824308127 428742343 744614842 122340155 77352358 947041167 743902051 672020837 466285698 406175183 687847347 932967682 476100508 219500361 766741739 393294140 760727470 727569201 777549281 841299953 853690696 231394990 94137983 891088436 48794447 340011359 381519938 850160332 890390904 646243283 5181115 704608436 113773777 339004431 989548562 577648025 896455225 596378125 146013566 482171487 837563619 480853559 760789966 477476765 772730583 84722160 69852643 736317980 196217713 154579979 460889395 762397019 128270816 479552850 845101128 336353806 137740200 591342336 812707647 467354779 397232417 854145863 62011978 87478172 745585653 762127308 932909614 452141663 740354982 727984678 951242950 617882473 890279430 855550050 730030462 771770607 316878268 796618626 424741848 854302555 856079046 518404089 204136427 517717965 775195378 590696496 847814367 822297751 310516835 589894917 405583730 965319104 992185362 604562503 143088246 7168898 262793803 855365947 256327504 478765261 138214700 894306586 864126075 357970370 171613993 299785616 10866179 588379192 684672907 11636543 270822411 702604346 276838636 516965434 638601031 214655622 588306364 259019914 972653954 465151760 242359487 864737965 606448154 285925245 367744397 69198354 178830975 144285097 625649425 135656350 878839480 690102305 560778763 981677610 614949853 330325673 680492942 461211906 430181022 666937528 292234626 644226151 685421498 954505719 552212771 71162894 412617353 982883014 190328704 830504864 542641523 144576695 855150589 573869368 70468727 621695761 99054801 798194152 489152933 813252430 879737737 476249652 457443236 181905309 127259523 694936725 702141485 548292449 355030132 51838455 653875341 561248176 897151715 648618043 476049959 924688852 287035051 380116150 51699952 130625998 111411581 518931120 438450162 26795214 545294172 322420198 85345225 66561980 514031903 481568009 811710249 210750899 456840946 266646077 174198102 86620800 931397333 683813275 139176618 459717415 955860763 96018351 321722130 204933214 215675117 169376250 253089937 446014225 151044293 266240881 781043132 722432732 590778099 413397756 266056253 137432212 238633499 181197304 672273745 250671806 29279157 176455862 302421578 480647190 79292556 910291705 469986573 706314250 249409856 316486268 87895700 647692093 479156932 375491434 524504941 808204804 20155616 731734244 853183033 944243948 583034544 699305855 297693230 900252466 516067619 773280195 245725078 266092873 969644925 84277933 674860622 399706968 811718613 720246317 943040072 33224121 440160664 615117225 616482313 6220668 703639556 991863929 719003947 818730722 960126638 803012200 550515932 399416290 840591356 508752441 867172446 868603559 723076012 497346592 407153541 821562383 223479115 71902789 479697724 874840622 135806655 691784005 625990656 467121865 702937278 960833712 731198563 877966812 878025044 154569612 276067722 997447701 702205537 243374288 86128048 184444246 624200729 292521450 746533025 566064438 986749826 975946554 146956863 187114881 182942457 41135765 520171265 620089012 883330222 845279171 506426479 565596290 66248483 823628032 745743783 131702353 511422384 111007103 124132827 375452093 632032002 603923938 353706193 295916309 587587992 695406276 920926050 725103577 832743493 323187503 748811259 896305474 251221681 957905702 514808095 7571130 113012184 814809629 295367650 734418527 575585929 771936123 958745199 690636165 957052392 942967071 237910660 419704113 737456620 468602840 103084529 718371486 746248674 202237420 285993245 820500412 805413608 362032530 333300097 450190252 399045747 628202360 271914 930571589 849583305 704417597 409423931 997554578 337571720 289663480 980256617 417982546 203593757 626207919 662850173 813965943 199161934 367283937 79420374 463796392 149776561 435256061 601961444 663838654 235845938 727416552 762867630 460153162 584228753 309102203 720098125 907218958 211954657 25170435 355407983 127631488 619994379 875328192 575663829 354605898 321681737 440677222 804096725 583175116 951945387 937450654 320571352 486624921 849390485 804561798 845919453 509039605 675274047 837031981 992349941 619410014 725105204 373234200 842818501 684061952 928315603 503115456 690384903 482958399 429237201 329963026 573372424 886115889 982942390 788117229 306561580 202140961 317024859 179575207 128496486 906411022 403294578 244329097 909345728 149757737 272879870 168475726 750977753 511541851 951553750 513530024 391051874 625170364 68855847 165066939 544435360 28286493 302603247 172323744 25977070 931835775 834862467 244965604 627297335 230673818 609651465 996592390 875751296 835005527 908162047 762278908 996034652 756595798 271604146 33935279 904715126 672809833 188980168 468280442 532538635 346012951 685445815 482746799 120996205 855844122 256829515 231914514 515398529 570346465 850542116 451634268 464502594 11907855 832913973 145783737 167875132 318878714 353207111 484237898 950930449 879170605 703125876 955619236 885863160 41368038 320400044 990050128 264208953 246942361 114257203 31054665 175450290 783741291 301079585 540724353 589128533 516402615 738623969 331210076 950628775 875633037 410133682 238128690 175442499 558898222 999804201 698623954 737161557 201812625 42607277 342943738 426694432 598158306 825449978 975977952 785984632 299488253 179484063 762937004 365418825 714738679 172150912 825755131 174842638 113225878 603907668 710836318 511101274 760265940 522989607 156990937 699962963 362923616 579668186 675680356 929154866 606661660 657577374 270072941 491860164 521385632 152058493 875357012 272165868 692379830 599624401 345969646 275455007 357555164 838059467 583366915 705458150 132500677 567615213 444720592 983273311 106102744 38296208 999204486 555067069 843726255 559145567 359127241 76343492 560823706 715059674 981853233 232760141 185836058 222153941 1858252 178510280 815665510 755314166 125374362 924256693 175913961 642716474 921955088 291149610 557074625 27277424 230975894 273203024 769723970 881269692 603695113 417822438 571499633 566682134 653571642 355754685 865786762 484746697 570701164 90023482 112036987 971482868 405849306 2621399 955294566 531374092 595428911 935718305 786549795 986481752 619248651 789384123 515114171 39725684 397010053 169295578 836304366 428939471 834184612 678399176 886527406 42976812 762974693 638427362 586184610 686423077 233267384 608998042 156681124 282584995 224152835 665315317 476023876 718305127 150923677 226899469 185804610 37473925 239985620 973759376 774420503 647560420 425144808 38379327 46500973 86010303 57572237 98575984 462904482 91182630 268203117 200315789 448705098 712471934 972105892 374489235 430366378 609947133 494166850 715529620 836336958 234651951 902246605 469868341 132722739 137519220 43389884 948063537 569842925 330061183 598637821 873352404 856491139 460759256 36458096 841855872 254567998 957060699 557276521 770291499 345359390 758305207 80592690 381144799 805120853 456910576 256936326 83695929 306855113 641960158 797925656 454899947 451167126 266684332 339224074 592078139 500341642 393416025 578551926 928458881 792176552 115583546 656105 844652205 896332966 580518774 330447586 415783870 494298478 465989001 702221656 106849868 54570401 412094146 618404145 538947071 246991887 851594180 748736460 22860309 416949056 242991113 306968952 140258784 279742446 958578778 847085562 260404038 69170569 626019672 265235212 445416767 593974962 183508471 48308952 464709723 396962752 519229437 830874753 711225658 955309374 593216136 376054938 867625745 597176426 190079109 83900844 421922860 780799416 538519354 975733941 242824294 304793934 947713212 883625892 986763186 980127109 664766586 412259294 79080598 949090670 255440304 627416764 460278443 397617994 850083829 448757771 518867230 30343441 827071918 202344586 235738930 378342637 123725464 425273967 896588476 701368764 342950466 967208419 886164133 177471889 446101648 263101825 298052460 204135986 843692602 55541467 865950114 456866204 762356042 881142517 980024939 783734395 704442786 277889736 333670915 747734707 416542580 105386944 441744951 741137370 460939720 202913855 962764520 89318331 118003961 873253400 114126476 404317396 52778296 501559060 625240237 580489432 717563656 74200944 187309159 181104943 218843072 259486301 70034158 506814833 768494604 631642239 392270854 872866287 580169836 579737199 479911561 58640938 317277108 170238265 382807269 650121050 269347211 523107551 267508635 821267176 812630764 436151508 528453569 428983028 345241255 256228481 896770945 245036752 406114273 565449155 878245016 691581314 440583312 496738155 380829400 961510982 82929664 699970493 927528614 716260618 839914832 461180657 71739772 591973105 626864630 560469430 209551464 808744145 282405431 163655594 487136396 338937268 806795184 127420387 827912092 436793179 747558352 756586345 578611811 610399926 298782811 443070393 207403838 444075117 258616296 702533956 583381663 608389978 299415652 899908077 652666763 241523469 717660558 665482127 345527325 803717191 329364856 815856245 476670465 127532415 985228556 895188960 341147385 354117472 114134661 848140421 598474588 923592521 835841522 877582092 774303890 15018443 71371702 726452882 820899737 737441071 164060938 750645544 36840323 83379182 599967866 857096273 992798710 858070838 166124644 981883272 719975338 931359084 875053436 524253880 973987055 405144741 559088971 609750210 661781540 301493547 532134571 990911483 98928705 162288638 433253965 817508523 939168078 519103824 371106611 741703566 63879914 543409416 986579766 777642583 310720197 935830336 884894081 92149289 249023781 268860103 157212436 146313244 747611493 372545952 870329154 736190 941763186 857254785 609190963 435814287 824051533 699300949 780444515 936796547 215043979 310303931 697589281 287517572 287191000 403671172 7740433 849742318 265877103 978981176 878709162 983498257 171863972 782942866 852499129 159499955 587992154 675617536 950218460 914434187 692373133 774805540 517842952 6517959 552356810 520409429 36430596 915955079 247458738 373791263 299925484 918028895 334791803 995495615 928946350 350703833 445295470 367959208 396560784 698672369 405214058 869820672 68755368 810008983 671439712 492806947 789847395 805827377 418321621 870474015 45478655 35270678 390994531 510610999 102435088 998446868 981813303 670950241 994746623 505705450 273748629 880756168 880865670 180205519 216033872 733637962 822114613 845716457 541158226 965197050 773594864 42871767 760119578 71401375 164192879 507303976 685686585 700071476 851031229 84801762 565169620 730134630 213956794 257977852 622101029 417905945 612639641 474011619 180464378 838388451 302219618 235717113 165170485 155122319 831422833 504837905 213061706 580619676 514989301 226461685 227762884 533676732 418964850 845001696 412845760 858554453 824726336 161015557 898358383 319218435 3701769 594458886 557778073 283413524 786534223 825496445 431001365 508378122 353770211 124430454 399774034 850412317 935017839 682444531 497739474 212379575 607346414 56996199 44250025 589709046 535445294 74586684 555197186 942550317 206842965 514820173 500375450 86327395 871643993 859267436 441504323 713430226 497750663 406937821 727492195 100849513 281062397 376766937 784092274 578710603 601056815 100712461 233803904 330755406 432471142 858994712 362579116 262468221 449231164 252535312 367790510 197403799 894941473 641202174 586646862 763642765 609154777 897598557 918877930 368918280 44345340 20837535 708587508 935491296 61619061 101885352 526050418 356215718 504251908 864625745 834904957 624507163 163023548 305945062 114426818 358239415 675440005 851060904 265652228 92139043 407241627 590676045 695188375 896716735 644911117 917668475 743523047 45868829 50602047 491227984 579554287 626498947 295588968 825481181 353497795 219355246 954888725 399720102 564857350 615656458 27475620 738810916 256428916 65578938 939109322 346806083 974359130 705826454 557736974 222391780 424619545 228548584 279358283 56938844 201092263 13509038 881494322 482829555 477808397 453907228 667106757 174932582 662357482 373222167 378695134 812960358 664985070 467193018 430938534 966347031 770861152 781086165 628814110 938286226 158851481 645250409 762949785 845433187 291638663 565051949 164016960 36689675 521840171 836238604 749693837 279311999 382493723 18531237 885837776 524091047 666892544 836522186 970864301 287176928 592820761 749425409 846320028 204294011 216477879 810868998 249309032 830401084 926889151 843174983 899019953 199889115 86244139 896386406 29907050 251736966 182304393 438276283 965743195 787624285 746933114 446565072 247792544 227658997 313886516 849389283 909175080 29329622 194920961 294441319 88761911 369442301 715499966 935280259 357754084 323930715 863589981 148697233 798202524 403982163 948648547 54324896 723346077 844559424 774014827 449257203 795535996 174852333 155932321 684754816 34341535 794645019 525676871 503358066 456341700 713674750 605333299 608550056 562904696 382842560 373856591 450697267 622364065 153136893 30061592 441812188 854552821 811926086 254740000 576756380 545976448 449163166 188840589 32974881 322563618 287563776 331488663 653333839 23793679 829688022 172163853 547569597 607448909 980238979 445966545 738637620 886047801 926374107 538626903 92909108 729312514 212581798 604662826 432027247 781776941 702893344 495329896 975285580 840721679 176276604 514108737 166386277 955154518 463601244 588519035 900425737 539858049 477923675 843591921 225309627 69344867 24589955 497164047 578576049 526238628 858690519 222934872 143402070 133569856 1957067 784616673 789157064 261680134 441358022 373236691 384473946 940122394 476400551 121213420 333221139 269404787 695066685 331649279 230696750 953502046 158033614 922458479 939815832 387428601 725314449 243402424 940804470 371100857 7412020 539610599 486971804 542852836 54523222 960546844 526225686 864954648 972375310 285072655 157200803 273440450 717984098 730216329 615072309 687568296 540003793 715956198 193465714 658263648 723543242 951555738 759782454 586208470 540896306 666089641 489811983 721742538 553458659 74120748 32608192 475638863 882826791 837313235 178278846 367244366 775752769 799158878 331291318 819272961 828109540 9794851 580340741 780427384 764952762 604476044 567223870 901309207 383277278 279056789 55398824 34911766 141008226 687401810 350087869 264916992 55663562 304132455 632204973 282159412 712032143 406809742 701009369 113692775 173973150 938391829 583330392 578719520 822228438 349451101 297023093 258472507 699944846 397666908 335030062 663431783 628204556 516142620 32292535 88538792 891490319 54030906 634000117 873930453 668437317 729234023 308503556 953489435 736262870 262921451 519766706 394805112 70727640 116985117 13988609 455275073 344320984 791935980 541484713 239500956 689490775 184218201 812220307 838727687 787067978 319860730 214452319 401448399 475541146 555340153 20424927 996657050 914920610 180146451 131287194 36278238 740500916 840085786 845953354 671332967 734897812 730026612 795991902 436324565 245196283 312455449 821587577 595613979 879344405 220624024 375314929 974708226 886256132 227112595 566271313 522191268 703648859 505827134 183731415 413552113 6680483 715886052 397274614 367814445 974972889 16052578 9703382 725888624 662895598 28390570 62492623 885260324 920667206 810749762 151645170 578425995 957528890 190190530 435562880 704834103 129579926 856128090 604497776 101427344 664360219 759941961 844416237 592062034 827547390 740596583 159277526 857534988 651191399 342847132 82928445 552131745 514424051 926194790 538940904 280842699 243624755 67639384 190603475 541879955 938576683 33196181 904789932 206444506 900812499 538589273 315065174 285203668 169634969 935320176 83324519 509240200 65376222 480293821 363855273 524553553 896673140 911449525 803196060 457163104 113228838 762709217 911295475 187816247 97960241 974726496 74910227 98334511 336294595 725589858 890323351 580579571 298057347 59441582 81880014 738314243 195127816 659738141 685421883 554023986 223649120 881964060 476861973 513908777 900336523 325951278 903761605 149805026 852110590 660471656 757888106 414405421 759881761 134973428 113456472 170220078 428325841 491384718 365822868 30841309 191490527 68790538 2640730 890601092 532012430 345484748 2926488 363087429 826977305 862022222 378697328 31995282 624337707 473203870 772377530 492645299 127469413 450558173 935294335 612721988 820443355 895516609 10812031 208070835 411167639 392356115 99612332 915865798 186503189 485497394 290934189 492464404 900038085 250092175 39555932 92765319 450142093 747860527 693707848 31356896 855504452 871395884 52954164 236136499 421334840 94656308 210754710 252415846 526409385 477682184 192865561 685136567 510662732 833244671 357773851 295422771 303251912 372289408 15355184 491791936 152415548 512851595 552590749 344111636 237910455 10229553 46549725 552899131 313053119 823235096 529682720 422465045 682596811 594860280 377488839 722518357 131748041 429050144 257691626 256651395 744815257 848887793 173992146 74955131 228124303 649284450 829447295 1813484 898024437 997861499 313002530 330314202 615459463 793227226 814494372 869677085 761182453 114013233 714211102 143978208 710782308 910474437 713590111 639340066 932505581 461825009 202385002 940357688 864007965 544386977 724642548 17652297 479049332 551129560 320079338 390011601 304595174 257936682 439087337 340409375 241321309 194184002 916497604 992607446 839883060 558126941 37911042 591314544 191164605 272520910 50292574 613267382 706161085 599564664 559004741 557150537 57586155 856467031 643713883 592931357 732785524 468101623 977125110 457979384 616311674 339182843 646433698 436670968 459011216 106053784 98062491 818359562 693554496 328148247 598698582 373366387 566315653 938732630 446091000 46166091 302374481 149641800 750153949 628886525 539494920 294542192 323775763 438307529 959101699 755565930 32548316 463050819 391400719 601822563 477777712 253150417 683173099 250029212 873338680 117405232 846078669 502008042 494616788 395720175 781464798 361014073 421664278 359833586 440994745 786965509 986119877 146381040 874391792 133018591 819996891 74648310 145842055 206071278 252841736 673996259 826172535 239809643 481024812 914062314 679329580 777900324 636434656 268346387 643921416 294098426 220873710 376571065 867767006 317067619 639119573 92171789 824197495 107677928 483338566 341084306 592610833 564948904 300870313 445744031 734710746 466234067 567988377 164407776 340554617 180721713 131765092 656487893 322413446 536557209 735841420 169688658 468274957 576258170 723466056 706175741 124036112 728913493 619823875 502025940 586786818 932031808 842862556 845908644 376496204 979815269 257800997 998102931 486662859 211257473 927518181 339406742 474373712 650357861 150054742 717318139 620980511 888478585 455189351 334776801 320329073 912590132 228813114 129578683 919190002 439666341 68159911 392131282 39209539 546362605 956347320 474945984 848113017 599337922 253652779 994713845 682440860 654595054 677588723 191500853 12403497 79200718 245393336 751125527 407357841 765659092 968057938 517439624 892231096 795737862 974348369 700927814 487472502 774733692 526329464 945622630 834817817 971010789 918722366 14238927 937819617 461921027 349162316 162369213 772296835 810306090 883430401 930878526 384989095 7348165 928314353 402398648 647224938 518649042 92092769 587290209 595351773 102730337 905559245 668829382 459296388 704135704 871548771 607542085 630357207 424296626 425099142 536509074 675087300 384204923 10054987 572433462 409411627 20477398 692194559 937879819 767028833 881417143 705176479 200831425 580192942 641082922 435471710 580361053 148601807 104146634 63538211 460313013 592009076 904809802 314423816 50666485 981502659 367705584 477004252 573172508 521355987 612059669 40362914 478589568 800579890 880405158 673533200 377466950 684480608 646426790 313209873 462579691 620929618 661713834 439790403 862078142 295037679 924594779 195648634 103417443 267741334 627421944 888461627 615987537 508395159 68814289 692282178 521092437 90713525 332700109 543353084 264152077 817484458 897712869 827210254 491815790 208021155 664756390 514743756 707267135 995638720 269522611 826491842 110840476 393989526 424590145 663541807 325521011 153300396 980867994 717256325 632022026 7360001 524951706 944483307 418262647 96509828 972014389 253044155 959258150 146336411 748793071 272522756 776352088 492297629 365131362 914051593 29611678 763203416 261736380 143942847 124026722 357885835 69458238 495000915 518066270 72674157 909942718 669375906 503909410 612648485 445281062 226987200 54011282 315751759 599604979 202950002 441407590 5147517 559031990 400390323 467658153 177110708 433959574 10857011 521050683 184320747 565722061 19380947 284836175 536956048 562646311 903501610 786773741 696568066 316852102 435258883 159201393 219623703 300313184 359232221 844572938 910402456 964996159 95037546 657632316 112862145 415068480 802871568 603466335 138805186 38354325 651999083 108666141 676784448 401254915 300081353 931819512 23948244 320177765 44064172 635050177 877780875 545882663 292852812 582566434 784922980 488111819 887623442 132714518 518798293 414288999 226473246 921075819 46337351 36111397 167207619 56918343 365802133 636044995 553442309 40895904 907517329 523114769 909068066 873660354 435942271 143346805 667946246 950870989 812549528 151723370 88136661 762958389 702633353 513953788 650747237 334509632 373544433 911487054 841782209 44617868 240170214 731466516 212051879 142363014 427453041 68883993 590532875 785326579 275209485 253353659 591443346 424902507 71144492 874337386 285025048 378888921 417516210 209002284 134447146 400307453 228688248 346685980 844527757 227318506 905195466 559454694 821828021 323433096 193317866 486931277 557692751 645720851 175352715 691293094 172320695 774061978 356357206 133885274 313821826 535662977 674349672 763841128 98897142 200956159 750593234 105496288 394631309 529083809 304190488 908229481 171792758 949330117 512809651 633000380 134996756 653292064 811463055 561343270 952478845 494401593 28532877 586451722 265504508 337216235 536458498 668322141 240780943 927533031 80963126 968477992 239886953 862793007 250741223 705512202 621200753 817142172 899696835 26309044 84782786 408258394 188017905 18925674 165435945 564435047 547817609 751766920 733504682 832417047 692572695 126370555 51956988 715058323 306740508 814641348 936277000 732618581 457562253 961024889 799348078 101196717 348262738 627455172 865281535 275329599 481851592 672634850 928498244 842552451 317941568 777457188 826042102 773996356 308237950 255797617 525291396 846904610 383474746 60441795 66956432 144661264 500293282 955639461 645410930 121333974 759406806 714096572 326577075 747259792 327725419 116239675 546639763 614913581 858064617 867950445 597336709 727729648 265281613 15676975 159969966 454452979 842443144 528606578 128890473 638218911 135895549 478072254 200993477 723743798 313966855 43523754 864728581 366440265 795943537 489561445 837582367 390853186 988556540 695274288 605479230 76761820 3516636 158724066 803991617 760828069 742339131 557830243 515021625 55769987 633921973 311665969 819885038 643153452 614970075 138770142 726770779 106149036 981498032 173480079 832896814 184692963 470086703 386680959 204086857 243920133 574755523 91533434 676881732 893711384 257587916 632836706 948427240 96118905 546076705 485956782 672617141 582423639 734533257 204322022 974922589 175182903 508148289 553137704 496762183 774489966 254338169 399073702 371659789 766665386 905789911 985034022 492392446 22872170 222510834 131599232 943693469 201000321 230056152 832093476 819568928 310556567 291125128 429744785 294395633 631631272 953664633 976566495 306484785 526429315 992703762 616703542 246460976 186900811 319093039 680254549 468938742 233379834 383137187 143854348 451277502 951876057 540417712 611103426 403261045 261763594 409107088 166199536 629825599 247366654 533399024 30829731 267742963 464297983 503011952 719044350 519141786 852455848 924948772 156000182 277966835 681648231 929562902 30890900 490280178 919479810 61833153 618504951 395111741 461759759 95711639 227078735 80245678 352530810 239445117 621135011 222215636 51624195 343209034 189072908 859973745 176373693 867487051 848616504 984701949 782419601 299620546 27550952 237556514 331482041 64883042 320014961 595532094 14773573 690936277 761583679 756214500 480561049 968369974 535436110 734012507 143254509 803955607 993798831 677514269 167634636 871398013 591948297 604486489 906054805 516378975 583537173 729286770 112740349 322021418 212475169 412393343 182915723 638076352 138366862 653329097 965502235 684149364 249610835 395994447 405247068 304876687 747462519 467257669 404291922 335758543 994957978 378595472 34132436 66538211 58006381 107227980 889185039 298885616 307295797 529552966 827990017 220717839 583648332 568084355 706532351 852196300 632868512 195846839 63274287 510942376 803830323 599025615 703462671 964363673 644552857 491268968 696067820 465633413 372659325 48136533 982248044 274402762 913083420 178760476 854513157 483519161 592713160 586383994 822068099 176670742 809805414 552179163 936750726 437522586 428161520 723939554 765210881 27747185 839619573 976897255 616059837 837068989 327684628 777124724 350029523 772581393 544842884 864800968 358368310 748156150 842629775 808800852 76104231 85449065 206650643 253460800 288648127 685861467 622424832 845280487 929666920 125779504 175412188 967858518 373494628 978734401 290320962 164511185 762164293 323732058 203316318 4138319 696773491 262952764 669398131 155934457 454127018 92850972 852226389 409622703 412062073 331193122 290046703 967999363 407886275 544789227 404388031 448035387 335901762 450586376 854335061 45718483 907540991 101924221 350167512 993940473 24672219 531364419 442365056 799852944 354277642 668003270 921382173 259270445 260559251 189153639 540952719 777968029 797954257 283923451 442521163 904756829 550193141 747502666 905413341 881444896 754087553 470867345 442367072 403182925 542734542 25036288 160325384 106256511 694284423 990222653 840317848 120082179 165648684 968266976 836122092 113865565 26031760 811822837 304800625 179140035 254164828 484288125 69466024 768389792 120717194 115803628 457546919 452280595 475674346 1953708 574145431 446836077 324792736 562465945 312724791 810717623 66248356 996770436 748315735 609868330 905562688 711792304 757602910 373728180 360129174 633305688 731807685 167537786 690538520 984013607 379389082 237341776 438612494 658176958 66317566 137365827 961358611 818970673 962199463 644142608 605027224 260866186 146383455 664647338 467894880 96674117 279726211 792573624 912194818 897732051 73911684 810129428 615837291 965200151 890780010 346975053 33871705 376741356 148459340 125844518 305020129 944899996 916101081 263724053 480611049 616508522 128456146 598096580 358189231 145030154 470476429 949518996 69482816 766141476 683591284 300460309 353730562 653081812 909932420 588333455 184415019 644496685 667079631 443358589 680316999 142643633 770504186 870610189 218344118 35330266 327927743 955476385 76842027 91194773 413745772 663240272 55130926 627003842 862336867 550542949 902231963 610866869 103614104 76562399 634742049 659282872 819365654 264378352 113463236 895213703 180696442 62268287 316822620 447950802 383950454 284068774 257866516 125627326 311205200 231389748 536008683 682845285 490822752 86417963 342327094 994433105 899712917 515802179 2206236 25259269 721893617 227564902 970435353 329719668 306526472 934629682 516182139 680392840 205485958 88350842 349874408 395645852 977636262 785868741 542495702 922421506 372693691 659128782 378216978 437365375 195035819 557135362 272085050 569947594 824161902 389581573 539579715 721879824 745760916 768017709 774185203 955853171 975166396 435513605 459949671 754271622 239150878 211164108 719226511 31976403 707917570 507164147 35006637 461741397 807241031 511746467 161811162 190287358 301220317 446418229 599554689 982105906 169073483 967734711 745799394 534995018 594042154 164985198 302433168 633779475 115028647 334550606 637721332 93251660 773976325 759115908 561566920 184137772 969229849 353505005 190188700 302996697 217737932 763428252 420475988 270797553 844495773 614397016 621053095 812745221 227540764 159341851 30986146 368983833 849878128 860203156 247467300 338916134 802169810 92272806 496538464 419840409 348176144 454664423 490419037 437142225 144653835 317129506 368354681 793378468 553626425 101468117 804435426 893993178 692258852 464840372 351205660 762058673 604817384 334524196 180068478 333106264 187825081 691187393 279068852 855315316 694981467 130480600 993652286 390567837 18628008 489758701 254565872 727159778 174174990 188584503 444270448 654019137 397870094 793383455 523453884 42470960 921075646 218489797 544343969 63766807 710768200 514370171 80222276 90044115 907326313 115248967 86391709 817079349 966725875 448460645 886366967 390546305 133157195 353051843 185372018 472092912 48950763 715683460 62001793 375070510 772861921 58465150 325626477 533247964 885269071 926085820 86022351 471726607 37852905 599078908 977364762 731424975 120649850 67558449 832167695 912450969 272284511 601174530 172991302 712741598 674894346 341389898 113175980 279642754 410268032 718320278 12964863 654690909 170930652 421233066 37609556 724250301 398807242 589940732 84789650 32177379 878110220 369539127 366433269 82517377 296107001 916495290 457192331 782769986 638314489 401831191 628639418 789254978 198029066 159602324 316817592 809306002 534366270 316782253 695146514 57714102 59692347 301100176 523882790 992343334 278035641 376923295 919191208 371542992 321238792 219440370 190543905 207659156 633930887 493478354 878697067 341307335 933825582 143279679 548488246 250777009 415485445 593893995 990901383 259111695 974500778 579491901 392387892 897640849 312360144 153595856 785296233 257957469 963304378 503571953 907462181 464697994 639873988 471321764 43055806 308453286 476530139 513658271 449193817 221377073 361667327 533728461 780657523 845302304 44735176 439672524 802923611 819040091 689837534 560496496 595899317 109183550 519367296 367618622 224752632 115001884 749937406 780663025 956892913 819863479 721865791 744383993 693835326 639161802 56155196 466636023 416259540 916960639 222230147 377860931 105633402 401528057 61133493 93562470 700771403 226446284 172110600 274622624 963362616 561439616 485962949 449278307 759319428 196356625 482619083 547568598 92344902 118045810 981624842 27073363 681173994 199442181 876293129 660867561 117648048 154011684 772923234 632559322 225137452 617026204 866921536 610994974 891075268 198443053 869587687 702918111 948727350 908068363 692589100 778498299 934837263 550142304 276554233 894666629 320293684 992453063 282143691 681398340 86999389 650227155 435011380 390632499 163298197 681912710 946930777 783075583 546548412 507016922 75202676 477757836 233255941 467404348 127776851 487908465 814089080 450238219 531816151 634305143 751671921 97751070 697415543 79229213 474111519 276200507 668307130 380102423 275707910 365664929 82679488 203450059 270001277 738912639 407645114 632476883 996034353 900488314 921165934 716415613 341448096 976347947 743458484 87242830 968751007 883945887 209681403 34554490 164028885 288727765 839203268 343911278 406082622 989306691 519974438 435365447 170312872 546494290 343007817 706945880 424166713 289685469 777162987 710752424 62850279 406495926 604766430 556076657 732378110 124965154 667502984 390560163 309111966 30765656 237683041 629686878 473600315 870127109 504416888 355915388 846817051 385493194 352605935 375494149 37651163 271152317 111453562 817478584 385161963 619907556 173083109 33115529 360658957 285873853 605325195 408921373 893209050 864499385 624320479 591306320 56253757 666915516 92059879 521983919 432258294 864565663 712158139 870765310 775384600 165000366 534216971 306208692 278411403 818013227 934814615 392928122 973695883 497611209 774471348 184938672 778349607 179585329 53614798 476673768 460679107 382164608 935587808 780993897 49959574 218663623 689622525 994057133 786903597 770261642 348672459 497997795 866893798 723414594 654796547 633157998 836010870 668655323 30271219 400720739 600353124 945450550 278495484 73552143 308112779 337584552 233229075 658756208 211615132 663154810 126962756 584113335 394031001 385907303 758017322 403611340 645826139 942953505 691166329 629758921 569615374 683844043 955607925 469003646 708565168 629707648 877803128 426495212 379312277 125877195 142628208 492037834 318049509 563723821 149709406 194943492 763687453 320654235 212257240 52656182 45433482 651073277 890164615 859514933 30002385 341713328 626508458 676724358 860789866 744934917 72045202 652966885 570081312 652030400 375064356 683263936 944504979 856641689 851504986 443067066 474895030 11381438 897132482 961784104 817314385 222992208 769123581 764487063 472179327 391266017 216738369 690081604 138609713 571650556 883851224 952042146 55722666 314396061 136675231 104068568 475064322 204586933 875785608 207417664 864133027 260543912 414307352 342935018 842956495 240494798 920070889 670137367 209969943 882353397 215801641 681275838 501588197 402309341 792195610 206184202 266280948 584036027 610190736 717740761 883137490 53245623 61474934 871437119 11498597 138772333 588130121 627867137 873895011 705068656 462443163 557858075 322513880 898008770 251386257 29834043 572694692 588421982 944484454 993219651 813425914 440539567 250246374 918836170 608583651 231148054 414999796 724318108 385274297 438734951 131456260 895497270 359561900 865510508 66653345 323752267 518688576 659363425 447312105 18379329 973412045 6141302 585056012 282126004 382059518 667612241 706109648 136343795 56643411 621339529 759891216 447590014 898014111 408444460 825050680 435129486 918745738 84663866 288133835 65134221 726319888 755428647 786489821 434461849 458316288 56453725 296886170 102815238 710040701 62599607 879604669 581010905 21459585 600063496 201256985 187845965 818384725 82746258 520058644 866051154 704988187 802330255 222612007 935598601 783872580 111447468 656712799 260314953 774980122 380534921 534560479 756988701 560657207 673824826 89961820 488902468 222485772 412822473 323110559 676626096 198751068 926107825 372451079 229188104 679216830 615244644 910971652 23648293 753285406 433036743 52690845 714359960 996420668 98152369 887142123 299819555 126674987 735445359 718078620 90373436 467526100 888915011 136844401 850321549 705059697 228962528 227913920 478829430 776466 188606960 131780850 692414090 622393627 544891022 337381382 560863245 265231556 26297037 5758221 881245309 62549144 396519471 896991148 684262662 804198646 587992622 893764765 153954316 794938515 112051894 746224686 28109733 103322870 669359785 985738944 428671516 686645499 95808602 203845449 790394480 5412177 34233874 354010579 538933970 212457212 46893199 552639483 783151915 543580115 909008768 172853106 297133971 56757507 459896330 239938175 662399195 782458250 140622150 415972988 26777860 684067005 962064576 381833301 289509830 855315138 600431866 752803596 969328906 346105111 104276967 956180023 249725296 519330569 469886320 539284608 571618506 463917630 533284338 741109284 517972127 512646444 319277246 435437941 934576297 181051295 130302616 198250840 34349911 758551351 102983737 921997256 442820172 583114727 776180429 487549521 770899166 308162167 587493494 262577813 272834712 876869891 113986247 924961483 483168184 109404539 531161417 823286331 698975666 408301089 495017977 902981571 130721707 952541709 393201096 449632341 273730302 745640876 840943898 219524983 661173179 53080381 962284616 317603265 641184035 234088787 907213342 122550114 519078445 885906262 710866013 156709532 299088901 102627330 569949242 249154628 321213575 618505189 291210973 826808387 588159176 50047461 331549155 871972887 7741326 634492857 252239837 245309778 435842003 939233387 943211215 791894042 223831878 348578524 814044338 773453224 191934153 98677824 567414258 555389129 834189556 878613662 110035440 20869728 692809361 952781137 601501569 817834466 818582302 769206665 346111853 189787096 107647822 723039435 683926257 499755617 553873288 87914349 311794749 379372461 42701414 100656923 912423159 471251587 440471352 272879445 574339255 596149948 773660799 18033134 534723977 338601925 174017650 145428367 741328494 743369505 233675644 974062642 213114843 772998373 57672379 854856615 288185912 643169851 420730499 943056402 682642529 282085855 955305177 620270699 991436329 760920229 939912185 277033212 693654227 934700017 280684753 683888103 769043863 587674173 770286979 878575006 24451107 311893911 703073767 579898217 921961751 221465120 576921094 205512163 624065672 870785678 149950624 964847997 825606782 544455850 668925863 143623930 200893813 157268947 396780738 333926385 909893344 738248058 601980363 5502287 648660897 958952356 492821329 298139602 99788435 910403435 314979607 791799439 447358209 391434109 301450899 554212716 987682603 16448667 893889904 806694823 628573896 383811099 648028684 759155277 420525951 324364903 361940987 598376643 173226348 552896892 579184258 246043457 619381154 895395180 276193565 806005075 266586275 758204124 508221433 379610198 923170026 850589575 625128058 881207809 674216801 178041529 317876663 44372697 266465771 749922772 602085113 846203579 775184347 212606159 677215808 884019542 414704763 741586610 213846718 983063726 671937927 644087323 643290457 214434203 914182575 209938876 696852781 648458824 160594200 562126554 838363656 934109876 677511132 389916624 171897581 421443380 25596037 997144202 665047698 978911983 997982870 792029962 691176417 610806881 737449218 918113767 268648058 312318424 811358387 905208009 423963440 391302650 372456196 675606254 395394184 759478845 843374152 942047144 783822141 15892334 908735041 80267997 259004095 797614635 206302377 868943238 290593199 674929001 380649389 85468720 711881316 938938606 870120044 479364478 237914985 643729879 768695164 223613092 189848572 842716948 851523430 299885550 723650705 247904231 89513253 999567671 532052814 543761513 591265963 678680690 33173644 45021701 894811485 873064485 363091804 461263867 750794898 962700777 694888447 310907870 507059735 957598956 868749421 157662231 718795438 378073198 391984848 992930912 66680458 75833927 698466310 91730505 720586708 216831840 861163042 378853302 171727658 767838773 405942506 808023390 940863514 933703514 619777115 536045902 996488620 117233651 413789473 858700133 357796053 709012026 302322464 662690773 239735045 197663228 425503214 710334888 270572186 961540892 285920086 925795641 889092970 183032847 657259478 837107383 755257662 995008095 359497505 469379237 408061521 125507881 450051743 77982301 301038037 455419806 542685672 17907336 908527726 987329413 83283277 136839591 732175541 465394616 618367567 96988814 710718390 388714146 716097573 533360355 862057842 862947016 276140603 406103459 747994974 735951165 828060846 939095454 319422178 962211371 635485904 810349558 77727196 696307025 713960362 774129828 997650714 986971776 113690229 927412467 631445219 679951901 205768480 668270083 450616175 306774947 611634382 915322183 132881258 571790878 711356501 248471304 381968501 88658608 443422911 905125087 229734821 115216143 31950284 45069375 965925890 175204357 462056047 964829417 871707401 807712239 522129229 202974069 447453483 409070399 536871233 569938384 231925324 686229243 565080027 371285944 107580997 61338427 898488284 153000258 804775266 784815534 539435963 653662549 765469924 170752022 192167971 697213484 156253055 883165383 757769331 495734232 134065118 147794732 553741628 935084732 552178459 106527298 981559495 322605071 332608839 276222235 6669709 453434462 668622824 65805661 89375932 778638343 620061301 689548737 958410937 831849918 665635548 255307924 427783576 571469068 2519037 814572089 897602470 56865995 527623725 920895396 203295712 438311851 118831540 153786080 338973817 484466353 644453199 252795275 979351384 304290227 40938158 38406997 429650583 859532765 903895287 38391429 402546437 745928238 974022465 650229363 948334245 108389883 307763994 346334735 913571117 713813356 596053762 547797593 15147144 723640314 864735982 289924838 152499029 734250744 145329862 320820834 903823205 803350535 620948711 335931144 570127424 376986527 855504545 152175916 580432289 482173837 920019129 374355378 64086518 385676655 228159465 13235348 887256801 246654778 58202460 277400415 641936313 437779893 410047282 751839670 385336330 469499131 661935874 829016526 697647121 87475453 737543763 729361137 905615680 652660222 393678113 579177467 449046720 344634133 918518367 898289120 933410282 723331758 265088111 565665316 261829325 797424905 570373035 451620705 796290220 161371834 600632544 581384133 15100541 327545639 44232142 120493969 535724906 859312397 228645289 926968731 190989652 505879804 992204699 650249677 476891467 588107734 487674176 545122723 118688791 85993300 927388968 367171761 345356467 402436225 309969752 95357211 969859276 424807997 182326217 428738076 774202694 405847995 592756456 185788031 385612983 732627715 800265236 252653865 510352362 731723633 233000996 618374541 456763998 760694836 363648478 393912374 898280645 729801936 459053185 999556929 937826693 920688540 177577020 521810656 256537914 976782405 852949684 284888536 746686770 291236425 105507202 795403779 790664687 435242365 346942643 52555983 626521513 143718536 437897542 840096190 220470474 546574181 853503922 781541604 484062832 486737381 311598173 643435372 212632814 56399915 843380262 213393427 132542539 589907246 418933468 57568171 791800513 415759162 53100996 903763866 184228671 482611823 305237015 427733080 467444200 404040001 98412417 97528309 113115282 134973686 631038628 680803984 904612168 834137131 607081363 39319265 312240329 558312272 575920215 943410352 153076998 784230695 192287597 815980379 136068007 863184201 349287494 471104085 688427655 581546145 24384454 775260577 875308084 437235694 187538118 608284763 707733616 354896454 696429715 397600559 324727987 142380942 872163180 890853088 344639142 912824066 930383623 622268099 669552809 738725300 561072396 102920513 177760846 121220356 749467033 906609240 573673691 957785389 579858364 729776155 36866509 797830584 553884668 72392494 792725840 524041223 452527825 435206474 146226375 740726220 230719783 176455615 440515914 768799118 120914144 633311725 575588899 184775979 124450639 599718346 408716624 485832785 959166909 549705823 600993285 587269891 425529831 98239563 762796839 980686362 174032510 869625406 787977169 681240001 880917414 23670655 886477779 501827065 847508343 796326503 592549422 358362899 629268095 576668900 276011417 152880696 242091583 100549879 116785407 272054244 819404201 356974902 215457791 497000551 34383273 932600139 749994347 377696867 408609177 143626866 583451593 423271249 122875850 306544639 554630101 254804476 460454914 843303382 362791165 633196803 433438201 860258545 483733475 266537307 714386395 794564574 64795359 84584652 49258185 626978110 226431611 557490799 79401815 426854472 144104949 259469110 362635791 861660995 170465728 797205092 80474093 204105743 238060035 108892689 193941218 838303901 532920600 948714407 787422290 607169394 996918798 73883752 289201557 805234217 140863784 563769317 470280313 88542190 889469020 98713736 872889278 412540931 767843797 861105675 548260761 467953214 35071602 730879999 469699634 944773001 742670404 800182855 911555110 861682274 482219796 236835226 187128581 864721752 919927002 244971524 89326549 298734996 397112391 770669925 633474445 688640845 587313980 790839280 758959003 23005779 648333649 215625902 174330975 944598661 414336079 876403193 253419437 894607451 627445942 118330881 230721871 102649181 103023672 273423178 7662977 911474345 263411772 824293676 88116595 416804209 418834524 587149394 486190539 214090619 896807143 36605244 942959392 267738527 475165536 249793725 918034048 662584909 946135805 819638397 133532139 792217092 209943337 981469559 87198933 775327196 5092866 115697788 928957096 171268093 168731867 252834991 528671552 449119270 98498235 456875528 408575853 425736743 842587869 5462481 518375796 103384167 948756270 843928876 729576334 948144734 887491283 946643338 796584552 929655580 391865504 85189941 512780706 581832641 289812385 519500743 305252944 648651266 934302101 946025137 375374204 796265643 970955118 119685045 245780641 784337431 155634642 549203821 815943218 101217466 578344861 681851330 411070481 885887896 617694301 974159989 934082584 290002123 616981716 403899801 832930452 244777984 863415674 469280278 280586948 118141690 920899321 646051368 137990495 436643854 80313007 819387359 871875851 610243750 348771119 327409565 816480999 86642111 867989184 516029083 748133122 642146922 501159388 134241123 386979041 520565326 929282483 950661719 603228669 891073060 411432614 969037353 741303362 749537338 265153740 233148513 768880786 878904049 246461552 683990491 9121600 784406847 804736144 801434950 135973014 957837102 177340256 249549222 869993295 155185243 445301957 928278226 691992349 574291064 264591067 931988982 646386980 98064842 2414704 523482131 92964989 992942507 677499782 197382266 8104116 360059657 208671701 769906517 682859595 749867749 102584134 20458526 572208437 744886486 807206521 504464934 684613979 682538372 816610112 144288528 263538459 53923117 892532002 148458835 770278851 190104610 982685657 250425019 754278427 219261771 23361492 638069480 235497176 45044383 437244598 265128397 348996394 396905389 879430613 791467058 307893551 896499223 88384188 647717427 239241341 487780881 202709417 441347520 548244636 836701926 849581071 678803739 181952393 931170163 86362901 111906652 563974709 447708843 761325078 686334704 370622724 972772881 308166944 84919318 458139727 814320705 290704757 952705377 946348258 248101735 378241548 260287545 584763518 672752070 885993488 219507545 916197464 149152818 618488160 128168274 984868760 863371414 306839822 498799879 998953948 630663792 398847456 396356143 458524594 169974608 360625874 422016471 793260321 559645020 552178066 22073053 735238177 925147087 793049347 902025846 900300574 292497270 367370683 531996329 841110905 653084465 165956740 556633809 943188487 426745464 85475550 176326174 983494032 787145171 838991228 811604501 857621329 440321889 694966467 240296716 382683003 453600594 515674958 140799151 652038065 794526829 261836908 195117694 111062926 474573451 227623584 614916684 746112797 84945178 132116000 946980033 231551839 645781915 53944664 388773337 114442441 992416291 726642532 50500452 804348355 99530206 130717849 332631428 196022570 248940424 373870332 960850225 528666830 323450866 839668425 346867896 651146229 181092995 938819822 166223416 93429206 960607668 181667725 681746468 65518623 303758739 417325694 522274244 484190064 56093249 39164874 315316147 497328094 588515444 677049393 782315618 877328241 485515254 469101477 687099028 47787686 373897764 708719565 726867936 550776045 310958191 958752899 189784371 375339307 847382238 337985622 682380107 555023930 688967307 735452425 483383101 544298341 400186913 157856274 45100783 496499437 423210597 271749916 736698782 483969158 396017834 303383173 295648346 294900698 44562267 283324897 226332805 557195013 869101685 681831029 913543256 256926487 639650313 640222652 554735454 996121749 682092735 790713830 914979063 492789241 250627662 378154068 794622679 488118317 782091269 906531869 967841156 216516884 238659910 336488077 749854939 129406978 385198597 297852833 822312587 633730110 391093581 215562379 85695640 51053447 752214971 745127988 229221850 386661004 947271169 198227381 817144443 717611379 520585572 443270877 393883261 443868755 298855999 301544111 392756274 5745593 303134334 703801312 286440642 237218599 189819940 894886749 560410792 303249808 903417285 843499715 212303413 565690846 621186316 123467493 520028684 637254509 661796663 905064522 499661732 36334733 362234262 811495341 853085642 278755075 403809807 890178683 690213148 370633352 831827357 365572440 99683982 189249865 685071564 785601690 252499945 789798501 15970367 84101836 533016647 163402867 571426091 753281837 523326105 54295545 313024473 359552559 326457889 983193590 906164776 97111032 300424952 878824025 65456648 338487524 318440073 432330887 846265344 851266049 582119444 156461529 963633576 602670993 880381228 47439899 498964528 313816460 254691898 832462863 803644120 798643739 687895287 321893352 355647350 249419806 601906422 342634447 533376243 668235175 400374296 857969762 379353550 387283069 811933973 923461936 65819799 170828442 54312442 769244478 144636021 96991917 761669797 424487813 498853793 263171225 945883979 761380721 401578473 518305268 131331827 298005859 747159342 330047113 586367481 953724208 184577510 133226199 957342860 857848993 332464538 642074255 442663727 651103729 835034473 375246617 265968956 969843282 199182468 703784976 16992604 946865768 340241072 759733186 251287056 325337804 146767559 834227121 927070252 482262666 410943799 707266324 292534614 457989539 268002433 82743126 863551627 528532876 907472827 529187478 233744027 214134189 81562895 571502118 51394728 421206500 397546042 892390669 939923115 963719935 82204430 543410309 772244463 482580293 128146928 223843965 799718292 379977454 221567578 510361111 805307661 512490662 459428186 569553451 766437538 415578638 151399441 558404547 637546479 908900923 623317558 410631837 983058531 533302837 712681617 67991980 34045890 417709946 796031872 58131863 224866980 230266488 181268341 837823801 666007796 483188502 778948469 831945759 339143281 261422892 717373850 693248781 339025712 713069830 347217299 720746106 207765528 579680741 625916191 563842831 146684772 811146366 795277973 81982507 687264037 762337145 290259808 582671458 582659518 784860147 411178107 129236473 574614630 255103996 982323961 545226092 863432617 757525274 203649151 994638825 226262504 454707909 332033480 16048082 758141908 895309032 981724960 144665407 608416503 377433190 404513514 378235002 990278187 840368531 516405787 590833793 917361696 679403703 487072956 785118087 942794715 414566543 772686443 595907955 572281649 402946252 23658714 268635231 449672016 821244561 335215695 403261210 93520695 832498425 902492195 643732903 4739641 987466126 841174339 554437052 205991551 683154131 213995698 646471492 425714562 335079612 952198149 865529053 439030932 209898801 299642853 711690331 718842200 80042639 937130129 265205059 765759558 397631014 627056729 803806033 13661993 579791548 733684772 428542194 896149920 248782600 874810859 637578699 339509664 821453880 763272508 544177968 298934256 601625708 796282808 27244717 987635883 357060408 57036692 921141377 32354754 318871590 889908764 748433438 776186232 287148850 790494764 354116779 129276132 751824204 99894453 945346434 844430450 792960729 666725182 112821938 663358050 106953779 358091360 420302206 815636808 925571108 599204937 324860635 755539594 31725167 683118394 930628598 966410981 537498183 301170697 36834476 133182185 427104470 596223648 76771345 758020984 515599800 775228540 250899690 98320971 646572413 165307183 79825970 974650477 802169898 495092446 199309721 999739070 747405240 874397379 655166464 476682353 685122708 842022828 146866174 275309966 874836510 191316602 231557214 632311153 859859754 187704995 908503711 766445385 622604418 163383473 453948787 326781594 218543969 138556097 323729728 951371707 671037433 605982469 489942178 836722777 976323566 954767426 15230695 771071474 949335770 754962003 161856145 974188635 180339911 816345252 294664664 250789947 267363000 639167671 976659237 823055757 196886304 549935779 84952984 663864866 677162088 725003664 779846532 961752093 148124014 204274236 132775149 454336117 302527489 388815225 278747665 966172534 958225254 425806508 109713372 42907456 430429910 552345680 75486834 635400263 857100797 96132209 879650729 659527121 265481597 630627122 449056140 143886971 39239529 747145031 665281241 571180725 737817546 133583483 477902212 654863681 692819230 876250156 223785266 128686520 289506003 478026186 124552127 993369349 804929489 298833244 251415480 418683367 172694253 152220666 936324322 338178419 730614135 914038868 715825841 667090833 912849325 526018345 194264786 459599226 701377861 313255889 480762273 586397248 414215655 621689012 915195059 548015430 330154417 984645073 219040078 864269508 364212658 615141688 323260140 451478084 235660399 380693904 258950076 335034664 111663712 92138130 110622497 586253602 579797108 324891531 171379761 303012537 253463689 787980254 369418807 664966603 415966197 552148352 336976689 417306117 733406720 132636539 370288722 319729517 650380391 854802539 291870849 492951769 234301403 797361924 95550169 928466037 386199168 815619722 621584679 209493057 613487214 206894935 698967151 279585937 101251124 745203032 204660072 113512587 331585360 531116688 590808315 101457068 618698936 505382805 390623943 89126212 113610068 227822094 792585120 486834421 814320769 378974011 982224396 487908152 384333455 858089581 362864837 334827224 41739588 869315465 494473530 759902324 517847128 342303113 472620557 25839361 529655287 405590779 341395862 253531206 523666754 297591424 632295518 843166559 638669518 698765134 606787493 192369979 838152995 980225967 914772446 711286046 401083198 223962496 857078061 19635488 474468111 913665715 928947696 800405163 606408700 816982989 499844915 559168256 855785308 241297000 996998458 639875507 921016061 186765746 700123131 393752363 562375583 562475757 206577057 842666787 288704887 420100589 475903243 929752364 924680365 528029085 487634506 736974633 807160286 254167674 819535142 801971153 246509722 305143062 782503322 667619120 591306727 76604054 297992276 652654374 142400700 162186549 587596598 709524966 737796743 595607743 689504216 892468857 690160552 664224534 601222147 692394809 229135347 399481521 139906103 805754966 724735794 919296792 967370278 331669588 233339809 623512425 989779255 13426827 831601264 555122390 332961028 987878310 98647109 791452453 283020252 273219109 994640311 779827503 183689538 221610715 817617876 416147297 608624747 323285872 412408476 240114750 517793476 781044959 739504515 153318618 726246507 851897849 236175347 142557025 650368177 827936737 423962056 503112078 220265118 786481295 346240978 478850868 407623533 854964557 430919766 819658937 447296779 840057148 874732430 758685590 489264284 111769040 503132196 882698456 209633015 735858000 50531259 705985954 568686373 169437527 636122470 34023849 737371877 791759190 999222319 58849718 725401899 686650127 163930514 29483048 775096477 605256987 312061439 10897263 287979541 621542246 608169819 810254482 134438690 582739374 941186431 219840426 691838086 820563975 506171064 47923813 287492793 534912345 296559173 552479876 931242597 526371296 724707549 443880541 809871592 401814444 773757222 387115865 73654485 331370271 37551167 355799159 226662515 690258802 588990007 437373640 77134908 862258479 128410259 204166641 568126303 499383992 969082572 398402732 528076863 858371263 701981903 427791175 368264946 760567500 374857083 280035363 739148227 95489467 793254694 951003702 994885553 870500923 75015193 454871433 766243566 987241296 231054607 50835899 548093792 34805969 381949882 767356029 285389603 580596202 760286014 619405844 748806916 756525468 485494964 159338971 128255240 166560568 333531049 354575550 903857891 431649000 51972252 663495615 622955650 5933606 323493251 706292852 856518274 724890691 425747526 690065287 568659126 486749409 566820675 570836277 41531044 429413497 914317257 913272784 293185033 767046871 946760861 21386813 894524753 977516953 794335352 497613943 990877727 462727347 636416134 320823306 834666955 801907437 574179560 94155928 284363231 498025571 544626483 450319448 862207642 569075460 961828079 651657362 512716653 731693333 569235482 446953508 933760 434959275 11887522 404606976 691421742 104900916 865016302 165354411 390964100 577009135 11741014 32308160 687939782 270756463 67269798 69019243 409523435 727434780 46724512 638275567 683024156 935941553 519590774 235791137 986720569 301906879 605467988 425073130 372375124 624585001 115964116 62628296 788585779 161806246 844735111 2451021 494628562 529926723 508057715 204502943 162370271 624224222 951719568 730931447 54682173 562527660 583996746 648114978 378938753 248594867 950758914 4324099 100725624 1761617 103278989 363642895 417071007 978898355 254731443 603961039 285398185 66327647 287787185 527369569 439158013 540949419 334323128 167949816 811511606 10588995 65806700 152871256 353738913 947857575 556539237 895565146 368182210 341762474 209814961 290188142 719537359 268357364 263767888 65785620 868424243 809066113 24899767 621007970 436419853 856121377 286981710 550966913 77922734 941843446 104226546 917536816 970310175 480064760 415388787 362306112 557060761 897113460 27176471 254846998 849086474 823382409 815512341 271014956 294861463 31432618 311986459 162346639 341920276 871512351 640868041 9780578 714848398 701095555 230040116 206764890 784317634 701955655 888483172 18246721 742402211 662497070 635210454 100412788 778264535 34621135 208956922 300090469 14025787 237412887 24569270 420948249 824365659 754364356 302952161 161114282 421902843 632478442 167364809 331372486 496029841 145215858 875390894 639330606 918662087 550241430 88666948 590188088 650564606 614689127 152919861 34326862 447625926 123103559 89525149 965329005 792639335 297581679 48003980 968455079 990352220 850766442 501785480 133922721 506476243 678904472 240674312 226846742 800718126 215771308 905488378 431273042 943305604 723262767 919893821 461109175 411808032 165722619 452766504 961039419 814914049 791647936 195864322 364329704 639735641 743289218 463074951 198030427 960894479 182157593 806239849 976847174 349912381 504546735 219251917 369022703 121182898 505694534 235404746 592105390 87881584 651184688 564027374 904197491 582588463 659971989 36713144 78703677 462860249 103176688 867358495 517866148 941924876 874972562 378938377 536032848 587952539 203960094 436920533 766098047 904227597 20442123 314255314 570197635 599588636 951747878 855653573 224718914 646100792 946545933 872469863 528223413 453473794 615063220 337388517 892159081 926900689 335704036 705383262 150204929 329631536 967782327 35188329 829220529 330181470 975932190 242906508 481470149 42389708 409716059 160219078 118442008 677405091 680914567 126989062 254019741 921067068 33284621 784028337 998743770 239475109 511331117 852725792 288866920 638549539 773661050 911179039 907598964 193642410 986070876 455627888 321695809 886173799 42475151 312164422 915862436 696158519 936347810 357922506 637418887 812917805 210256250 718615194 271202918 324623120 318323660 240867653 113109205 482535386 80396710 987947984 838387191 687655226 856019174 635956532 719250440 840887059 990062017 461920477 150236885 253195515 486330174 391827244 93843519 57858749 503085497 76534263 207938748 690232023 552357729 681751300 55812054 296816381 287477945 787019921 731859626 868028564 549937434 850728399 934692969 700053816 177235248 587834722 96444122 374100790 762554233 297898979 161826006 734798354 539250378 510650974 602763467 242777347 36363465 715978964 765932346 711713138 309889139 614805178 381039418 589546879 931356824 193995129 381595890 853669500 136585306 822616300 450450466 814759279 706489266 77503461 319527579 879484308 23040491 827051175 350905538 322815705 556800037 794320749 914249233 560848481 808562131 13636322 503459222 299911426 899881277 520019112 513070195 607006151 518261247 185408977 388692060 588969582 440376712 500461929 931509788 532468202 608512924 838761706 668365840 809827554 767687379 855303877 354312362 488405553 999795992 348438752 852790511 320109924 929018410 791819027 106448634 690411327 852912158 945105834 290637431 647217720 464202715 31891430 119607080 825811194 685733788 125162108 709989732 474373860 668022642 841305620 956366995 721891464 901578688 181902795 69020595 644223020 747840957 482247089 866505686 177362508 374562805 460311884 39368354 955020822 135793352 198245908 763589327 135998444 951527658 847736821 265676461 495208422 44850657 890236368 570961051 387955789 261596299 508002809 944906641 442656801 913080213 666774714 11789207 717121428 802914820 290414799 957765196 996668045 607268784 740130793 918375264 766470951 330982340 172256043 591507225 995372079 510479168 187552176 651509970 695205289 426510199 690775811 307885432 237038411 934787217 181971365 83510284 461931264 555268106 70963082 952853027 861502822 840940849 883967644 394331241 359580241 515314602 622765879 157373721 307040582 768086509 378983083 261265543 688163840 613308357 812441534 388594070 182935791 252046545 100495143 46225474 172097972 645785862 981837844 292277272 206695847 574772523 966758053 54651065 784910417 359995227 853323886 253058651 783888370 307846023 27653881 441419335 639896572 559394290 590200386 272308060 468421525 439580595 221673273 83945099 912037402 102655286 942298179 384507737 735133591 3314363 194097082 629071968 814620495 540674774 72750696 708918222 773717562 646901997 23515152 273178084 33944450 516295101 932173798 178190712 181176069 442441174 278339345 319682675 472322518 230157338 465321264 564623956 399525052 959264322 288104658 618123436 593692850 784617305 604433916 17793440 834687333 145377343 43415720 95922282 832455097 504287271 512094528 401894360 151087685 760471833 836784423 640652492 885623250 25553009 221851440 764636858 710410207 138901342 687314469 32937005 551997216 373514084 944490817 498139458 529144315 898599642 431014070 440581674 584379145 36574573 302699561 653469613 881542043 351736987 750776113 7141794 793759283 115188793 857514971 867467640 295020806 240004846 346256169 534537905 661770369 64202421 109469070 510233441 800680385 24893279 119404403 605518515 909711641 593067791 756307894 334436708 320380048 744209596 419494438 819873350 154262624 725473458 868661768 427368639 262420857 826376977 120357525 172632903 17383931 953836621 231345529 388044782 202760128 616183724 554702166 51719379 524670672 937034187 944324671 206689966 880190442 948675866 727795261 232479047 954179330 677440091 640099278 221775868 721947581 813186855 218955873 12429887 443323894 629812841 2982619 87464982 2269245 649405152 200669205 315896474 296210003 657363361 23847771 151970424 843105712 454547092 976508654 835931763 688599037 25099506 773460611 405362656 23936922 962125261 472543171 210129192 952373273 451218568 113796809 836286025 878299841 769499995 891766439 409810262 128275212 667585488 126829537 164815602 980026665 863879497 227434735 884204761 667799675 331086199 763382976 975924312 838051863 985621732 931060018 909706960 78453066 271095147 880783771 905003575 294369809 343542970 36211011 647548310 946154400 327924439 460847591 896007564 883433180 439266968 914870840 974892745 118716640 667458601 361940058 223447188 749395836 571671946 35906662 73907526 883435953 392676111 765425384 739263693 813924918 234611166 711367521 19434282 501498870 355956340 938714822 23489267 600572560 745487137 644876287 667994066 772835030 649972359 690629737 871992067 607614798 871906847 21685333 522917338 50209460 687712436 114177926 861971515 568719990 616254181 364108215 258272032 129065783 848987047 351928083 368249111 323760972 619895489 931679931 500446401 717575490 459627343 135736644 134390612 797295190 711999040 900302134 568135450 671777019 197336280 699206542 582178800 581349720 460924718 385036348 770206664 219047367 62806191 21965478 188530983 218739544 26868377 635430435 775061416 988758092 235741313 125534849 264361591 932096154 969128142 47431808 957717206 724432493 77296955 868270165 829628571 879771811 836091225 986909736 426515120 64214864 952637706 249324182 913038738 551241785 289486600 693151535 127702483 845752666 460488028 969487097 16458905 360575328 62557671 776493291 908157980 150583856 948585692 999420019 752820779 2664286 217770820 611856881 166211752 222936759 225498489 455144762 505752071 589222584 778923947 947153429 692429779 161360148 384753246 487004353 167304490 224761649 641687786 632703598 370366268 725424299 665026042 947136959 930665935 774094800 341787661 309773134 690204606 430945315 723003384 725797416 152670069 88698586 633679203 930616397 925428087 153075552 129071431 952103729 895988953 310310355 15721590 868911166 113460676 233236871 293736979 450605392 181503990 110530945 838027286 590887223 286997826 280619772 148937673 853220921 537527307 837018600 969942605 331751053 39996365 39645542 800563990 281598688 733269909 525697101 452373099 29470420 346599043 383334312 485119975 312491389 367581775 487116598 989629179 21660642 9804738 326746089 348725097 88477570 918949688 837961831 961809354 201727692 148059429 841420684 910447626 79018917 191112845 176364774 654771175 385000934 88779145 674126648 308800373 810947548 46211529 580984056 416171420 968749767 20896013 777888464 787223704 661531995 508065707 107520032 93850233 213194817 212349197 510400378 789140385 787606167 546602031 268407589 193555272 219608172 10819109 33952156 756275195 671731525 958651027 628417036 604305433 361909915 678885939 55405785 976723029 41583195 546172755 141991449 988852791 630539108 31245396 235175447 178711707 1762316 227672108 647348690 554636848 55959196 736524005 380886907 832435705 825433039 693308444 954001147 948976592 440379735 987723651 895642218 328618206 373909592 841177439 831423129 486538277 541572587 879561482 931316105 546329334 277042589 276544882 496425202 729984379 547768301 772225432 154607805 855820078 23018193 356150547 539695498 959060320 158961202 329893002 493696299 634114483 19623019 711673917 994508583 22973600 243770062 691628157 548164408 233059315 716491807 223492144 103603661 517755721 448322327 90596174 118024329 716807833 858272994 47084390 728592066 259804328 522070433 160446490 186203139 857701267 537000681 359207838 595413130 972307785 558913603 446998845 615388619 881368591 930107306 836264916 344918251 21069562 75808272 552989781 917694789 614814328 928073177 826954310 986142441 261927112 283627869 518367807 433362712 725372541 750886762 78869616 696623305 733585663 493543361 204669720 747005224 528327433 477675925 581616911 735764497 205609260 46823951 131704381 972846745 293325387 362119372 905253408 353226118 740517917 340427869 381701707 948081106 753056175 243075781 222704353 712636204 699455455 150388223 293651230 697676406 19094498 826285686 227141582 543280712 81904062 157101451 666922964 109983084 586404049 615745555 577691301 824489312 414395976 904649430 401483978 106021079 468982697 654716689 759361122 663984696 86229834 532697333 38000029 750747165 465712855 771234342 418694978 780704726 76275664 453196860 658717994 348087268 138234888 989142341 171006146 196837502 278906407 957879361 6533517 991248399 33489961 359595429 219713952 189840309 594917341 366566361 49930789 622764484 488378216 669197242 983085528 908844097 120762815 564589336 269683085 88728424 384723248 405358393 579895976 632054823 222383066 649306453 754914723 963885728 743915056 554040599 65922188 288937131 793192825 247810338 372362628 619372625 773175379 198899594 837998401 180377170 808485164 301398103 746624909 251028128 809345224 930890758 147875780 171415778 820848318 798176263 363436378 431060210 456351227 471165760 869622355 568765791 786896189 433759880 179157961 660255212 581283736 782403373 483625578 124285455 161596661 685957487 391069944 880906611 513176718 255790850 79539399 509527158 912327028 172821904 629026369 643404460 584258825 734179637 299061605 508488538 632961926 202074369 971507780 836334588 579192438 359659386 569260420 858481855 944943417 578339607 751930589 624208135 337862018 268789958 745549214 553320427 464167386 960038503 734219560 276105908 791567387 854106958 229449586 369681250 574243829 446411461 997415812 870133543 512489836 308391047 140283388 37965545 774596440 369576263 68543884 692539332 481415139 422220071 554719609 926082950 829783311 874452033 413933086 373630258 561521454 483848994 117044071 422765950 288434024 561558345 177410903 869518164 787875384 799694765 542052994 291374164 343619567 302190900 422294163 158255953 175845680 347946301 2789064 871652048 839540082 989644311 62688369 680448908 74343810 943139719 811160948 452851957 418054142 675603270 94115020 163055531 432350682 454964097 344769285 262407176 219451103 637495128 891999426 299935380 488513063 45172575 508982072 909073550 829997731 319456287 428779184 584070250 107044757 8927894 881627400 8260173 938862358 409788595 617738291 604460691 807549073 369464283 620506804 719394890 716634950 94580583 630427175 232166324 822845128 844027172 997643705 41155785 383452543 10692049 233361067 861142451 473773863 425488804 700371667 608858448 865975631 109495494 443717914 543544755 529197531 758297042 535106047 355068578 696675715 967861338 304469010 994741274 668718162 393487202 929438842 844007111 400242215 128331235 904200560 486953613 473813815 258688841 373631170 159336706 388633225 115896310 268834385 936997873 63680121 351304125 501767315 894687192 94339893 386374247 186622225 798488170 425787203 645846065 224511210 246125839 906628089 745348172 737339727 227892063 109097476 688173916 542932997 695946155 510784994 862675450 490032102 323088756 458609255 444610866 860274016 873634801 934192956 940316934 645819124 912857230 129080667 656635625 691984312 311461224 380738965 589999172 59985366 692664273 898705164 988609780 960296203 679930578 21195705 841923018 655465768 74868644 871912679 543438602 687189653 563445302 806019510 377533164 65549001 352272811 10727321 981793823 886667475 9477337 989733080 961169985 903697876 194563274 837977359 585699944 348453762 976099134 202254765 309729692 140696231 827680040 13173366 837750106 975453600 87413037 954906114 975983635 585993951 331746856 644551227 967332266 798241130 82049449 853906659 524114938 495460697 885451889 622273548 406920526 533771355 862323447 59625118 568604391 497702962 310282726 161111252 475751290 150583602 494575261 518961343 694433199 486002886 354415533 482379458 592171171 952121836 273141599 222311444 253624935 723498420 152508972 351274817 973125246 54136772 23752002 956138153 232063587 97605335 489841414 630822656 130223105 167316281 583446924 73465292 269594681 446475597 439596833 978646507 489627487 905784327 459855042 767494154 986057149 354504051 779073186 361149742 232195087 500982572 804871336 631251247 578761222 663264997 224555246 419437368 824213189 844482276 378086467 697748553 702735719 11424898 680630442 584232373 46838647 97823404 792283609 114735524 526957430 580103781 380658107 686678930 583011160 697061698 837744879 278241486 928177927 907114988 73232198 220483836 81413855 566230178 174402632 77037716 437162544 846520756 945721776 748610400 631229888 812725257 108124652 9840386 486766150 778560922 73965726 821477740 729061616 797420020 571730717 296194918 671289310 951460026 133507829 862222091 221912740 929068065 304540259 688635980 765990604 707963251 801978585 876491627 725815890 115583373 941870464 639758722 141770790 664000864 71615921 111481082 162786990 863795827 461145467 810193428 492342337 216911199 989784097 878135140 373337005 805118546 890080921 883543120 156074161 187286925 227590157 490395541 360475780 391342054 48966238 234703811 914561100 995707207 467168412 345275836 46504360 880892205 26764175 478498105 956892455 655031593 856482866 296821573 162682575 984346466 209126450 850856639 872355479 640868114 467103859 727060189 136230636 530554117 922921355 656192420 254487856 52290589 905548357 589628017 263013942 888269264 578636832 530119795 593052360 763822248 586737102 296483630 167443489 337091778 316509109 858729721 678264947 686412368 245286513 657117569 129008483 698115607 115180880 613054532 197481096 531405298 253709012 793388311 877452271 837182797 738402613 165611169 798998682 110256554 624582877 419263709 121458940 748538656 198408426 98496924 939193215 187687638 112390575 518289665 374585086 418708365 449511219 296315907 977788747 422365204 820531120 30998254 368023978 631870417 672986645 579907554 24261972 88940863 587344517 325373778 541015030 776110186 304588502 170523783 94192687 819331957 441824019 328936475 998520853 769652500 810813947 185580158 22824881 403880210 934043007 450781813 142561662 663619277 641265479 150735254 461442798 577844661 778321710 119414476 233036517 476351952 334608322 846915289 391775804 631051321 637642437 975224015 482167871 875828636 959591855 111274646 175512367 397111484 164370473 456075626 83891393 246521070 153675923 766991450 204741790 353351835 607538303 301749962 654291681 773790658 298075443 758536946 282489500 58255987 291276331 75443804 957736019 435613525 13704598 114772586 61612159 779571233 434047700 194039501 974197260 189707812 540047614 820413455 147210459 571244225 894949214 995889675 33293889 772254701 302560754 751794287 306893702 840627377 438478318 168500033 697511527 29903788 985373239 755702103 707365269 907253647 393589224 523742941 120133940 835139998 473637585 144084435 637613405 361763382 283643379 472491661 665520796 871042369 784971269 260394033 225955442 429456579 652890610 319481660 29754324 21499217 397403993 834470398 649145770 25662613 322029836 185275161 874350417 337473484 203232657 977889286 552916250 88227399 33912740 670378383 426189512 179815405 511612083 173310550 786269718 744148920 211570528 802040141 106070831 325096500 804388355 804512316 699465012 685665795 278020390 656910911 261850298 105011291 704154119 182977605 711505481 539394438 693579033 14464914 953116894 579715937 851232899 686392381 589608041 50655197 961926815 913719731 338554960 486656898 200054396 179435314 288676331 953329639 545784925 178945615 299904262 545536571 673606200 151461745 605235298 749654975 348108344 71590483 414629427 89658954 402268988 665527942 435104931 819830468 690619221 347739628 917586510 370206123 259156044 68864830 452091588 706521489 929457689 267932296 550171403 439185819 657673581 134737832 812586523 465072644 402666025 156484306 315939167 975408280 822009317 399288590 952509242 427352889 182795370 478986425 29747584 837490270 806646840 950217216 377958905 768713103 754211073 474700136 448949473 365962730 136344108 245625417 523274603 642956961 997656915 784344398 768782393 768982394 874749637 787487478 165945318 973813069 224459269 574019094 406398332 212964490 351945801 330229845 287414014 581949872 609792764 854224047 250684384 794474967 324447804 845394931 8415625 401271079 273238364 252823365 580095960 38800223 83258211 114170524 949441436 507215951 863762316 934269765 219149595 155759710 768617924 659897950 369934988 917516549 832844080 799183708 486497437 544536401 152137380 280698502 835095277 88474725 774764332 137195383 300992147 586439158 302223495 4291488 64884885 843039949 7505319 845437123 572566130 178827081 363979058 566981497 244420249 25271258 81798660 326848429 258241263 8439687 689889195 198218015 650680142 18492009 999514857 535900643 648778240 4074542 847170614 830161631 149207624 959202967 942789692 100009040 56554713 417323514 678114393 241287237 663394397 276087232 482214176 726929699 175833071 821566184 854944984 850656287 289639841 21027970 471298043 970745799 152833271 410416181 338735033 529945210 748514666 550944443 904676467 427810027 397537511 310060127 976297024 811211938 679177293 253829 627314539 631417979 708843507 693737763 463215858 371219748 808567327 284139840 665359625 961838499 53517199 330843516 846072213 777691599 543294452 590686600 71653042 651837138 239443059 765950889 599213870 709432749 113656866 118009145 254496011 436640180 912494737 477323046 641931777 263906062 344377406 384721522 436803065 259594038 36183839 214729905 989735315 280393597 340891421 643928206 667717793 54291333 304497811 751036998 644817578 596602311 281140947 466632235 865386344 825511438 521442465 119350562 876165962 810740730 186856630 959974693 987251187 388396927 759563838 483086787 793895097 196057955 877219674 515367579 559526695 972263363 877484959 431464420 390851963 310633102 471797398 841764072 379570472 151779848 102135354 400065669 858160469 568579913 129250685 676290987 703884125 684325564 859736771 832995296 725569358 687862433 409176164 109750207 806872682 524071819 768556335 762182004 208142248 451098850 677233890 822810434 809667635 388161377 298065075 19943421 550894058 610196377 617336266 893504400 946523103 379981421 451604420 425608569 119295192 112997268 751023410 532105032 575411153 855375899 914552856 605523236 540629112 566512864 172405870 741758533 284094896 505604888 664118946 540466555 235297295 59811529 178260501 788504998 396530783 258100049 574369177 308503611 579173408 959525853 567494137 496252870 100717573 916371443 373861489 544824418 537431667 412686825 454367026 284363843 880038405 702048619 770284512 614151212 906747914 890833401 39459347 183685625 730154757 939479398 257986009 208915735 80375596 147973210 177985586 201818375 471709931 211294417 468866963 849031135 259099998 90529946 634418788 204162248 151269594 275337177 157396354 739769473 653177700 715213702 73643710 91597274 682595128 442000876 959240027 349977658 793196868 789538090 979212436 682970650 482949546 755092405 556259860 381656968 360904258 337797844 460317820 728642213 127876885 391109923 490156000 838433319 14041315 6752017 738268746 864559064 826469278 281754978 928164406 246895381 643080429 174375341 967333140 714077007 338916010 624880350 149752266 908540046 923149156 232648630 477825327 834645993 749990622 437282118 30610065 391183375 436352654 140959608 780248112 114241473 785660447 177288070 772857281 947163221 25318383 974546049 678069483 433388597 663739794 790270411 335504333 827338590 435295821 744421789 394397046 717418466 867791259 519047554 590535788 874825830 49703852 712773850 617813286 644300964 434787809 850027864 745135762 370489322 951189841 263631749 185234064 190551962 557311816 884958523 997561972 239628712 223053250 542253098 824685448 326986527 691550708 864970838 867773319 681990300 569454788 87832726 457715492 458036945 647122764 663723287 488766593 670182148 647113051 366580696 764240312 138803597 476346867 343335212 103907670 442772571 289957324 471333947 70855899 764479856 149090256 308501888 610883387 671598433 294204829 136374604 91571040 727423447 799794694 604106818 762435749 906792976 101718418 509320665 324683100 930911070 911516412 432567517 704217418 367417767 950584241 691337711 919175206 49944035 923206741 92442624 876908061 950300322 439394622 88903386 717334097 110579843 25477367 820083095 290149205 977472190 623708351 35559720 745853363 923732379 206567688 557492431 97527398 787130617 709903352 442998437 660544864 799340744 357441003 989867029 668451333 741239183 217860079 600995935 127980974 240149223 99093062 530418966 907789864 373244925 824957672 183522978 74318898 694548500 194958334 967741119 319221762 961591553 267247208 896869628 166075329 268059053 933099576 667831101 101265418 348641431 99599669 927496250 204830831 864277583 937294169 428985854 577007092 439191036 899181907 823664232 263418258 41450967 622728454 900378029 654436021 257557422 346788360 861609684 192853951 159433570 610457636 395559480 162263171 155933033 137651673 380570634 891893450 781111629 246433496 904136397 783739090 606418986 532299401 846982616 284526025 537286964 693251207 893359064 985005654 727468079 944058655 216506187 592221969 106329077 51335126 770035461 902743814 695118068 825749472 890527919 545873463 351007149 445019817 325151555 479198231 926411574 522416208 670373266 28107791 874214841 153938471 525757630 330872828 516233459 912446261 416825536 469451951 571707062 536267956 805940451 369618028 560933223 451204755 678722119 364272492 800906368 333105140 78341727 891093595 561640207 505811887 201573235 894332122 172926518 106280654 866314527 191504382 474361769 285161231 323283666 578782927 388926003 570603365 816723024 527627978 857969201 201085047 875349041 651270240 234618389 911491872 788619871 104104821 219856612 914437869 91644572 578623457 971438777 718556834 904336122 149775346 845571392 174377142 301071457 746901224 926656571 63537618 539184908 680556408 640342529 283115349 995938060 940149834 924086778 828612563 30697156 560524923 307969316 762614673 673020779 769660444 62103697 185894155 828406157 436374704 399515623 993740143 101559178 817932210 7279070 73806111 194711574 675165453 742279366 764699699 292500663 958244770 198263038 421410549 988932682 154408902 888429950 783710307 733139327 251915201 116179534 785894064 644462424 815646288 561088268 767893443 204878766 414980899 468396395 593585078 336043436 798661472 96712110 190803288 810021970 350125086 532051761 67308204 437152499 103903467 117633249 20954984 195086775 37466183 871735230 582105975 778783258 536110630 700575584 226738551 999702891 243876466 195956335 663801148 677677902 737511303 288557354 751606347 214852155 94673078 469508065 694242400 186551804 489608898 154626939 284452328 20972595 627190373 622385137 502710920 107995346 133215436 331323089 731266452 498620576 850938391 86575548 983883928 894097339 559620571 41761000 26912723 539345937 316364703 18129822 16461495 601685477 646660962 916249277 244947563 838218321 735887379 602407221 277756489 373803454 344305176 834787981 72468064 76894829 961715144 108602719 80467954 31017201 338364913 116531670 792294903 937307827 591481426 436129334 243296665 870143085 770207778 158396245 624965302 280891056 909010568 239569178 574484066 383883358 387918112 435813125 18438498 196336944 693071484 799896231 978427057 860650033 222322849 975960101 395439103 545502272 925643142 192976569 570404909 524103827 329641368 683158321 427202514 280807727 551101497 129144430 669484473 41878896 72609340 503247847 784626529 852480136 644451947 672578083 37451643 257333240 743045122 953361730 114131568 667797016 769734449 423381877 169064153 864103573 337596829 546531202 80160773 980583661 532393183 721798977 429614710 388643061 858753283 207007265 700977764 461796180 810264331 924766116 319936056 126980101 468095338 95152094 691038482 383224025 202681482 528480762 769390917 630453746 269417286 41720501 393939669 788662346 224528752 708104929 119930368 79377962 339411532 933563364 137331122 434844595 120997651 157348918 528806927 976358744 695912306 738079206 292182765 783094882 444800520 373043478 395786327 174629227 548399851 553015930 165773579 191260387 915489828 841696222 654529789 569191823 493028398 77613213 1487314 115059460 255800443 981805098 523446630 240455216 74938863 185148555 455171654 19176402 126649187 655031512 695775287 813827837 891994659 854565825 604237997 529727897 541778545 645370374 398499157 573671138 150826496 949948668 305475211 821624807 524208761 651565839 293830116 664539660 646241785 899422266 665180838 506375049 706678673 69280400 202398795 564666344 39620549 669742263 413213954 651719306 880486158 601178216 106109486 838639395 854189144 316844273 372363493 145305658 344651652 209158067 587542642 272269738 97438695 933741219 882770643 604147492 895277769 898251469 486830907 163386539 495919592 855432396 780739217 438579478 992829938 240185684 900990960 383166609 528064270 542690217 578933029 636713244 271066452 770020389 512113460 913951499 435201872 231572150 623614164 375270276 309801091 484432221 639021806 245836548 552185314 15164080 354306849 574719962 617699925 478920792 555329601 380781227 497264441 609827732 948360404 473318636 620146911 910065589 551354260 754841451 286002443 86493856 963301871 43278535 333538677 320375631 409346186 425894899 832047691 179012176 909906874 282992311 552675501 277765188 493837321 565437999 233421104 297963105 166147255 820183882 909021788 337690353 907184695 331846476 290830126 342184913 432178861 650184268 726538135 397739763 425844855 406812087 5863674 1367772 366105249 154992843 805674674 168641830 233907567 681525533 70257290 79147263 188221655 822663444 957673795 948973481 989204740 396912747 435394833 858154744 28155092 774399155 172119070 908662743 875503707 57563086 526131974 363056835 119547742 530677365 743334746 825786958 738302937 994628276 339088925 661152158 107837050 8071785 57197130 670934251 535004451 571618248 190104395 48138756 112374636 755358169 870431107 330430667 213282078 140075256 37686982 668954036 658075321 971691861 616753372 174237258 250813423 763153266 825075202 953108395 627670567 71340200 754198376 598025991 115418875 396487074 155481523 503905316 504287930 330845407 511132029 874956253 452140775 859546420 362923984 368995486 769501367 22475336 307736751 622898410 642270615 370593559 990102926 388628950 476527525 399274608 840458709 643854731 981048882 153521527 514568032 924473287 452409414 477306403 70049537 506095196 854204188 253329857 856515837 543000496 452599457 476941167 523428235 922232124 317330937 338494114 728145241 89216013 341224955 946223009 793538054 781257030 348311984 980699143 833098409 662355100 891314391 365173573 161156169 457497304 389174372 185673501 464307810 214630489 393984765 684949544 683491686 855613839 253271420 614380625 25170746 306982785 432521584 485883736 854017973 801040456 847866779 164637521 810602276 579885970 479782005 858244386 689981641 798694688 617450663 51155720 697292119 289390408 76767634 70300946 888010104 913697651 487207878 4635557 901353543 992506528 177607563 896365046 854283734 557698528 514466651 720376979 742250922 125607640 51796581 285019099 805252410 277710402 332440332 580190849 672116339 219798636 825472870 565562893 813765175 209042359 838462910 6144858 433407705 898843929 728993043 807500569 797760674 284096668 584325527 257188429 196078672 831742429 262130992 196698830 742126994 371729037 794245114 765712838 228688781 725909748 396610754 430158902 574851418 869207145 265608589 202285938 138393221 303746523 726575631 918336929 551158159 929265227 683640373 766026302 908259950 678165327 908481180 52758682 881922824 660520849 26014487 885575255 707488699 518816078 727030060 847888878 779129816 880260312 516875416 341513002 930163235 742412564 847844807 148104619 234051925 626191357 437512796 128970085 705346202 416611615 862237615 761185566 480378900 28145180 174475594 386716915 517648726 213719851 822465900 948672723 632705513 869575060 762394502 412615426 503783882 674032181 421209792 736668824 96499178 566982144 283603573 516844032 964469421 362905211 531560626 587392377 343892588 323131454 558686395 54241688 186602995 612523385 477008775 796529604 434781955 203895915 962480703 496874169 73786065 353957868 566612675 461939462 805273733 885553636 361868836 45442959 213702076 155604433 408287019 943694859 706592007 682558277 191882449 326977927 647835242 263780454 859866309 624595681 114737629 468546669 154842089 970007885 749989839 637699623 719310037 915237588 142423454 81021559 983301203 144257744 482996255 95178962 401795553 671891570 248413213 799260097 778896946 980202300 5897426 591773539 522451373 506098567 905505903 837205480 755079917 360184575 95046810 197065751 646652735 526641953 447689963 569547209 406812967 834903492 960040814 330143851 40772827 780062605 813793060 800017280 508844742 171154553 28145281 634227485 651553799 106348631 421533167 916369004 169081583 751045963 125733962 297383465 512754567 796200525 270123363 925278504 595622407 556025768 426696829 578960589 393274208 96384379 489117395 590687634 445748148 30989371 783736848 582782853 224677080 961356079 839237845 368454855 251243225 780836083 775474486 325052942 963805812 941281782 971033917 420734243 111308700 118739708 329918822 503500645 238614007 773962652 660293922 864579653 580723554 371538114 115012948 877416392 124380777 774490927 290620118 684924680 571486928 277830644 963246325 83320499 240545293 540086523 749989361 535106442 89269194 803910526 897700223 161052900 197761640 177264782 137349447 782781224 887126903 6582157 737845093 127259734 315164735 187338932 90236140 918143 654726715 136590 659917406 356442184 868531097 991111547 35450933 752505708 74424251 535411758 707114846 221023031 531396536 839513135 183441337 262153483 738131675 288880986 107073690 545738975 956503331 328150879 825733451 984129979 888781762 942793280 836577672 951774781 37896607 383029973 562281985 940810519 600032212 971963723 700759259 748107662 919153200 676326305 722583599 316531709 828686261 92058666 467933322 373443664 310038299 983015437 883959660 3350665 515675468 359051208 406002633 277029695 382900198 322138537 208234123 74224154 438821820 896398932 256880909 342645336 222938453 107312448 217295777 521873739 239722347 908500793 592338956 896813785 625187694 468094687 827299333 531694075 603007999 951847206 823053753 492014398 280486773 90059221 380105290 961101637 11557979 767819783 576463435 76288836 902803440 517047980 564902982 555241351 131855525 75457801 113841974 370628073 632757923 887146292 803542285 586779742 183425603 343456409 250293039 91139433 366738067 157313656 357662965 664835238 989546456 988802660 28086316 408352578 483523078 853608133 368396179 271232125 909800778 61097303 526582624 203223087 241500801 240142249 456122300 585008961 80172990 791565727 431578946 803528239 580224200 115427313 286879108 431497613 14878617 710586538 693980038 393562751 71215840 555610537 467795009 229327679 849438336 208665891 831337762 26975642 340194319 82890271 336303240 768040819 246394712 476388600 752935497 709535039 870437593 32980959 652685869 305562248 295285830 999266647 325702258 700695147 44277508 647227575 124692551 995338777 647306927 691252908 360676433 82267993 33222548 749987764 724962088 259539205 217512247 853384867 503651291 734036360 60190927 219938594 131906664 734906215 92652485 286585387 873022021 474430389 80023609 713392271 659445978 432024732 358677373 880652656 111348228 523024347 420722327 430680775 27339412 729808707 691475139 21754847 184170190 435234105 901631471 481603544 883136235 356340024 357363006 802079781 232235415 561417804 190929286 290916622 470287475 200526231 942974930 718630447 384039060 263338703 515226080 447988983 229303554 720365246 737952419 908432170 901731130 7357377 901231810 647968096 265221549 372561482 506443544 210282883 898412607 127739743 729046834 504970581 750564040 96248088 74622932 186522344 519899030 580405540 831884148 645323556 153989609 402089285 272561341 376257092 962766454 561844175 399625998 769838681 311983589 16051757 522977529 432036293 935828819 158373212 714040516 805089730 970454225 386604142 377204971 730215129 161300963 826038537 508149916 576253291 72398849 755742694 324313145 836402732 940124953 200462674 878159834 445421218 359759371 963403184 76425160 400281002 170999596 301781492 214787 416883700 634302660 363576361 381673405 944657026 146189712 386322925 38656477 144604461 180605760 129253616 700121470 261615392 698043130 680380281 777954157 287922011 383206869 32565472 843183022 345544497 935826271 13637653 309250551 915539658 673113112 672615448 280373811 410477986 30820853 923856511 721289472 343586056 706802909 563084275 476643377 59837088 132905263 188890802 487294286 143960290 253957691 481754383 175624207 548892056 255615172 883422190 902841573 132365412 660909445 683555657 596774257 866365752 384006568 241576109 657669899 802884315 791167312 734770109 221278524 175976299 672792593 252866222 819914820 929629910 106039666 285924042 535444885 758926175 656101746 650173677 407945301 284072479 633340160 862467083 499231712 763419522 351123586 207551912 790903365 681220038 737591375 410757214 982112964 241484159 854289717 837238363 418834518 100171798 461690100 585679328 842920997 226903109 113692352 872475075 479349263 382049948 600213443 671059438 307444519 511388672 904261016 936647645 251331636 772712487 156838098 687161124 664209969 526003229 224756595 44160487 902109899 368191169 599730037 295284065 298874598 283558728 564950853 815306845 188575001 957172666 884938818 173099968 760172589 915260272 894161731 998928637 44532641 22880668 766207758 815421087 849222697 148345793 496812770 605734083 829674539 832224311 926180590 577135515 727018560 293601961 670105815 515836908 400817593 584916630 438646326 848233360 34035480 545650131 9954072 43873270 148334738 473256199 624091772 11345565 951384724 896409645 234874584 50762140 435668539 792207126 355961493 231119389 95907802 232661476 142938766 612754141 463108984 313840528 337542805 748715182 864711503 207948902 661405167 910643446 425767503 372790404 679867346 618394670 986237080 697465950 340999150 196413027 417814020 204892989 462340321 2689463 577308826 589470139 150528705 938604769 358723868 45914696 763144599 299644841 322550138 182262697 509485022 14497133 433384285 944728435 105703688 437392288 931894429 741089940 553247737 403826757 861146571 733959627 235153802 214543480 205762216 545499179 14141191 37003493 145166508 21464476 752005810 456712783 407139200 929669466 941651518 893704203 38966660 612523124 164472148 589881986 799809098 715540558 788768785 790280627 995598617 688008991 698888070 797423022 991455595 54992500 393275447 288123162 261910895 628659627 470991517 902606255 419891848 488220281 446335396 977296061 584257995 268090213 811858221 836392356 903780485 767870026 477029517 798401114 620991667 242629337 531125517 301765608 915170697 489290005 401684584 770577133 16906732 159128021 967921999 359107609 472001783 161703237 752500712 788860595 259970682 755022181 304850507 968110356 1501046 932105352 413165828 287306538 455729314 173714391 692323732 198058230 639346409 273726412 21151472 964945678 173124586 159272631 721245696 919932188 548730487 114463549 101218849 844038749 287121686 906041043 151427492 365565986 754941571 857828423 1844813 790807634 264455212 342440504 670220244 682744294 185926836 372026777 749692007 572553068 873005680 60628530 926516518 696741254 100522989 584989471 147242662 639816040 757216360 398304591 510049135 317219676 534567508 843819014 990105214 285645121 619321304 900899675 15078340 39604488 989639502 450525371 178610852 642731318 938694086 946440548 992189049 677351782 102828929 981125355 58208014 649209028 564160630 749545399 826635044 266870930 559321808 624629123 23594224 528237735 37157741 378336224 497313945 577644010 841594977 982675632 904243390 718468828 449391985 924790444 342175471 859620364 797103769 989962720 226870831 823375008 48718982 701819434 346967929 624068818 114180893 692707262 509124152 306551409 543628274 18899876 639034061 27587932 247838418 186430008 577262860 359373323 119983674 460759978 408362175 255667206 45478365 262012540 180576290 311662187 136086305 655380999 246746725 896377452 779628962 577714934 549389358 268167119 436788654 401939912 178210324 522839404 976292040 254408530 919008549 692214195 452177958 879761723 445618528 77033763 859610419 652079231 875916348 764554964 333712909 731198445 546291488 568569070 37662216 153708713 965193704 683476784 382203945 725059242 19960679 355258218 649612203 593197373 494157279 303052803 654757502 142352256 326374794 29839475 492347843 89552616 361055509 994802634 610072145 234587579 735006240 449940264 739438899 280732055 995059647 387219523 548426792 532412905 487959804 166703076 884140066 813994103 171622738 162515049 533142983 554282455 872873779 442102853 348712435 406100981 109398148 686779516 611000884 820698257 824878876 438481192 924209997 127143871 902970696 948144630 436875188 67780709 37574218 415375529 988856851 722129600 401386709 352582038 448527306 661842655 475345811 434940967 608909163 503243558 248704927 76714329 688050493 591091917 3383563 979889213 152565691 634459743 896449372 585398906 820831762 283789372 793894409 972572873 954987174 212489495 498231039 600383352 79482765 850145912 882585888 644947688 466424594 145877306 839588543 926835215 295513652 645697550 82913829 922772215 632130852 160032759 653506064 734694205 504842699 22451404 973212207 831367827 334689857 141508538 503897511 719106366 303204183 649147839 478129041 507619992 516925710 208059440 293435257 812203407 286297886 177172276 187978209 124586276 929349488 69111878 9166012 826535662 313832100 764159671 683402227 861769109 819932812 155682345 915666915 179032919 275204271 739263765 700431837 579006598 624913095 368178502 986040997 681418247 654273347 791353948 583825652 934781396 927824326 39232075 740103158 600795003 316051878 576021977 501912013 704191646 206738030 530968867 409061388 922992497 24005212 71178776 793994812 444436799 690866916 247634172 673134170 399317222 359325995 783487207 761132887 598431574 810013836 170554948 132149143 146882581 745535255 103159634 47802739 730920894 113927181 968110758 45744055 819455613 881889381 207077799 633299492 358610581 787432267 571055377 197352943 831557850 498320539 681502579 914517056 577899831 996900202 750086065 802788532 127595306 686919806 213116802 281914332 612729411 356955345 782090226 209418172 624422569 743159826 747739618 228610637 867308948 286565155 346695811 261555195 884506068 75252380 551933919 238029863 841839688 658511687 397892432 576113062 1980008 824120994 793484807 577133888 67236029 649968480 262309766 816533042 308736355 791547880 18112038 542544556 361847949 191888596 341031314 42452052 189591809 69465460 674102090 181153474 381180568 940877897 494811426 8875522 866463936 334066058 489744832 254564629 654540026 2202530 32193825 982221423 366439772 780103087 995697428 208646778 798810383 327068165 223124925 426087442 385782994 951280297 901025300 396627720 287059829 815411671 923428964 96374944 285232223 937758845 564715724 713165330 453762057 856042173 767826881 176400652 442017921 277750895 833966730 975543854 731379176 69643676 947132355 436071821 234971380 618675460 842015707 437501232 19125103 316975769 734733205 394331030 793524406 973245954 148627595 645574703 173249594 845351193 34413990 511122910 346162690 54106221 860577191 517620606 116508968 269963201 770220962 781316697 218410071 80336011 255950718 297487026 939734612 863620214 684505206 122868797 364108402 22161376 421565338 724381346 572380444 256388189 268441679 80515069 745798735 454526258 901549259 969369953 330808349 442052059 946717850 289110352 20446507 372712581 489186076 242766917 459294003 309150356 937922564 56998698 647752579 978871583 230243290 213008866 406678397 1785199 115679866 996518848 812521749 271121796 718674324 624028174 5480790 431009424 927182122 465449608 258129629 301245817 886706708 34194910 167124572 237123419 291983999 955607605 530745113 386121220 464483946 157230503 356226924 8527479 766938151 64366270 264931652 869206890 268209888 400676605 57463459 153246663 488294160 260004695 23841309 400009006 829106950 412821686 235242845 715660914 106045286 373128821 289979809 84982296 771296167 189986023 922262073 782829275 709318805 915732430 18215179 967071274 744990416 94406884 205031186 516250280 966045004 773556821 322020059 882186412 438206928 201719107 863561478 138898111 611886967 855684673 167674571 25333280 49149233 533480921 532278386 171841859 389923907 775822086 492889562 546794061 670162115 917327290 212718323 756219802 926502429 709900122 435051076 238087736 968422289 324548925 856833893 38201449 145192114 536082224 707112838 280420389 720328680 24877044 559512039 656947606 179983599 969767871 677682782 101795225 111424854 877970615 304806868 617557060 475875585 608646522 487410376 122955098 65624744 583754137 230507466 782436057 268453461 485294104 254145537 988210541 589733866 693202416 451058598 878889210 487331737 851952782 726976647 108908822 105969770 969398865 806607493 47610763 869248184 622648591 961994774 364487898 139300532 148735633 516704451 454454451 753203937 832411410 945993643 245012607 253977238 182600644 41659391 611108822 438334591 112117067 624967044 322932489 801630493 508357183 69829908 239211929 58387265 601093551 313321245 247580349 391257237 822838169 531309088 24665057 307855891 368313715 276920627 551446818 858601099 404942501 785865856 932141522 411715874 331656460 830141380 219235066 185479118 18507129 641584849 207517139 1916379 425484336 909376524 975487052 901298793 758716778 2513647 868998536 143447275 919541203 103428744 731684957 273600425 249883404 981365240 459724757 365058623 394777642 277078262 374915504 806311964 258907701 478666314 532118753 142926084 73012394 154226770 793017357 216364943 146162170 243030400 484895759 507952039 370294793 976703705 582872183 396814606 600441007 841819255 803901958 136123862 573071930 362001929 83349811 694387430 86628843 945229646 569049769 109013116 699832436 583595678 548963271 331679910 458490496 101784417 380332830 131709895 857396011 900564117 433850103 408611097 800625798 496249676 151221707 91539237 23472149 630490923 325244104 504034380 932141392 456385261 267717715 950061890 592657957 892468446 578632320 134986125 506809716 759358817 772248476 355162634 53790098 220645739 775813796 41137001 752402631 547913477 496430027 438439596 949307344 550020557 800208632 121657260 376298077 736288117 969697861 116645780 389641620 38249539 223648385 101753700 474570892 917556624 735877039 118911599 291369683 547257417 47887237 315279069 458284777 411025777 214724078 685823530 437061315 32399005 53367177 88343461 513271369 366461046 177689639 244934386 399377367 951896891 940368 972016777 582744256 674978108 807115967 337773620 968116678 147659616 748668642 80361877 961780132 512640416 960395099 192774813 961590661 16473994 588149121 654470678 213110665 200942271 56024800 367962139 662741319 104495477 936913844 219590299 922017350 250000629 136191858 777710553 146995330 883159070 166188864 380696302 767451374 791941600 414365816 78192198 927896044 981646274 953351465 30652959 330767318 665657949 119842454 896923405 432146297 311062495 593076661 728881785 783555221 377261193 237549488 507461405 629181534 336765745 596878440 14134153 471919614 610482625 884257517 598233250 574558992 505241014 782096391 192649757 717940263 395980450 438646961 497043720 620423493 184740522 771824792 603024450 991581284 636051208 219094688 914210046 759493617 531899018 321617247 858399044 533930315 481524241 525638560 337180272 521965897 324476179 779541218 573761457 967986353 508890138 125913047 250781323 434132674 297190211 340674789 923205462 214099371 518028992 359746216 996266428 564171537 183475542 286902894 710907711 898860685 9787616 369465017 84456881 94880300 274007754 336510401 779402681 275411693 778694294 418478576 556227413 366587719 590893659 405008484 264185939 584803232 53087041 37776240 747631318 111868118 271730182 855883547 409152471 704654522 350977404 42475935 168631714 922137233 756848392 894024683 110506069 350113170 447774501 818171426 300458084 91111274 624343519 493561882 751241496 742304442 852881241 886694366 398368523 741413784 163019335 683702317 248844461 12634634 116859508 55523576 593849026 335010446 315458878 657218535 758694114 215341205 307430421 137243861 104632312 547297027 992746240 759272016 409292996 128050865 986550551 872630810 392819289 899868908 452416266 980625835 778424991 278303731 822241176 552626348 230116050 534331260 45781017 59006333 340254721 893705007 67995381 328619952 310131088 926218538 288306731 31432331 418624950 899732091 751485387 643035530 880745984 744525737 66897020 912511708 754823116 834577196 946987511 252006881 536947919 952393712 816632713 710919090 372423056 102146007 884994197 471592857 330194410 541232691 590784272 363538324 154490766 269292624 942580228 63581910 702855807 700097000 53704717 141765191 998642068 868462509 884153311 82925823 220036857 660726722 461124286 15444175 944152750 856265794 655591172 739750584 481680646 792885688 120240798 82099057 840135466 72816549 143840144 162930661 502692756 246763774 386595437 136597427 951996564 125971115 971500255 938037165 969327822 407929866 434324517 403317849 358103994 83845993 806255504 736830067 887028259 582458511 851370757 490896745 922237609 350040372 232079742 115425757 151205951 488902532 553822601 935411751 198447277 952188064 837427143 898345169 286177551 809660188 822424942 615630617 576928340 121720194 511604424 532859762 454715840 29214926 975899058 737920003 662044522 238807793 204393502 506985254 812596415 311001935 820371601 259239914 696421117 398179648 21742757 692770450 435006393 599441042 449802632 475056916 814017881 493815301 299447420 380125083 851268507 541615566 903095125 704485638 393484301 903477269 737013502 832707942 108616850 911329655 293446132 279734404 646294499 208296324 887175881 395960408 568677387 364470594 272347810 283771283 59890410 783382952 602671546 856520214 343564468 775748644 825863133 380091769 358506607 391024406 230776046 903850373 740939896 882961490 588552545 643684026 804637439 677479842 39093441 762713290 397762182 486193986 170726443 859702556 803656806 362382946 173208273 241976650 938490185 982595496 968822905 882003363 721297841 410122667 597438460 799920554 958592112 428412281 369169863 920853653 251304238 120448274 502798429 46263759 967547623 968013802 312362194 603872630 639200874 16716651 813280594 213563101 821327579 189396849 460250520 921763083 394731057 451839692 421294967 801915195 150503353 720206273 894495573 440372570 77925009 197820553 216034987 951590028 718897710 145288145 474205830 505917352 866662102 105249081 239135753 408256439 37553703 308797909 27758825 396766841 330404238 672010415 749982191 259121376 739286225 397398338 13411706 356491666 998964870 871531009 707371002 907246955 480290457 530962638 307675766 876776441 625208522 943897987 607777543 373763582 795744044 426374253 907928923 112179698 945678504 894291147 800347955 103288447 404391800 246803283 574891749 203282179 211961772 334279854 765119450 935364625 522842536 622041592 621163281 132896240 169640100 937362241 941625755 331020058 42798891 905581070 355935517 729196735 120387485 976211928 458472529 473578816 723390637 77639307 542094213 837842100 823009763 764048649 475175706 19512678 162960410 596038565 737420294 714124884 112739331 244045993 236801107 593570226 812432545 1538256 617551773 906998629 516112843 908043724 914830232 788908425 814814894 82095809 522434696 372977388 926639176 86014152 732805576 911419792 699136494 156509549 794240580 416848173 485143495 133999922 984381694 238286252 307556174 849526794 765526924 458402221 193049043 621069278 725252248 249604866 447618299 60814092 411834975 32950066 643222844 392200418 794780979 131911671 407650402 852079655 260266489 80827840 917023245 340674451 282050732 477009456 330466864 638957651 563095768 247321757 970953620 367986310 557957151 276712594 680664147 358068162 105913016 278963277 628188253 972863375 745195499 241737025 676267510 477879786 671405718 702801557 808405046 346922436 122919339 512209828 408676232 81822593 359836335 734519419 223544875 66347898 439729213 897718367 653066420 557528187 466480257 391385156 449555594 999193157 143376830 636313942 6720105 881410573 815739081 625745268 185030880 138367739 880782219 540142512 774417619 607955117 723748738 951594192 846035961 692476337 701258816 330603984 125389150 19615246 307822059 668868190 480368099 51181500 925792188 690556253 878585017 265892647 31009408 712670051 147531242 417916848 513550618 35029306 526351568 392210988 448388863 152237666 386428060 743191907 61429944 663532942 189178064 370963090 429334115 807673635 489795013 696820202 634193459 32088508 250532134 494846734 754587884 239713448 493932147 662661529 567921768 224777834 153834880 433157014 184294420 186166072 450884851 244782598 349436275 710627709 63278793 711559006 435777178 62168152 402348753 292108806 604450994 425840155 554484015 470142683 529347194 868133068 417246939 810854317 658629315 598924455 436836384 586532802 367562994 897477786 471101725 480467537 243371393 303007943 931629639 54119688 471757949 186981126 1593061 994410631 252474889 38670688 300323731 553678563 394723547 542047893 618320576 764385316 708416698 265922711 19005743 264479942 928028422 302397197 981649530 862522940 592845616 236251601 947078538 212897128 209783613 649704306 618487072 869074213 831969351 845414323 286777424 681306814 116175100 618814474 300623617 869243507 204130333 855507490 50281070 706196987 109738752 908406361 938142119 767146749 701881359 115373635 751801873 62635926 405279559 749745957 857014754 941773014 506339002 214356090 243885734 88841538 788203789 910445682 625778621 321663316 173022203 280419438 395992794 282474486 975673040 98163077 329029765 302088971 321015022 241043715 948017818 184806887 269045835 603157732 51331272 389523409 137225201 397995613 665231124 920062600 554328190 397326420 449961043 690172091 492271777 419602403 684981939 860272784 465376163 537672921 471162418 296060446 72545243 188203064 138312997 672095218 724395321 768245432 220878003 354944910 760646076 946290499 390225752 568416229 722751996 483047287 991021923 871521761 657932705 31401511 525603191 388185310 318364649 461585882 23510798 880355628 73537574 548020555 42196721 683139728 439979070 906835431 818176449 684289219 620523306 796855378 636768370 772900338 338677623 507308770 719536330 467637564 982152648 27896354 482705383 639190839 503292753 129567057 256807094 814009452 33689694 543981281 75611773 621549014 275007178 627528440 455743314 225670503 315366024 608923634 912288417 501478020 768013854 318552285 31740329 693697156 393073445 400821243 797040128 643326260 58059978 158643524 515851787 56097622 830394960 903288545 715896199 476964125 478606220 687666610 721829891 440533682 307565928 199132105 445977955 756718259 81941600 895024365 763113567 20493487 490204424 764781848 456492289 691837355 751891076 163169529 650326827 186348704 394904334 167083635 709931791 633615610 133291123 878089500 808992693 254973210 862949014 626972863 556322168 160150741 302668268 750540251 61138057 979643892 885339135 938381345 297465195 864542386 165426668 307008761 63075189 679008321 751637220 315701758 595323219 416641349 553068718 587267453 96480134 215475799 80990755 154086651 205090015 963415171 504423857 643954604 274343688 627991498 888592857 290350332 777446651 909864353 309407154 644554506 754291080 5656944 103287139 815647016 836633044 663805717 987570860 211881565 188396501 685554526 673625438 336836579 498345687 562075794 151491038 323467689 99279353 234709737 715123622 166739665 743375537 8038159 955872196 640672307 200106820 828612261 805279066 437215961 656115535 600417984 162246172 423108225 602586689 584758376 827612373 749947422 264250846 629261082 819190754 36895319 554267325 823374151 323947445 420618759 314684107 843795667 512010067 567554747 745013191 98824087 325307095 201356087 420432323 945971167 399504365 442120690 789946793 661709036 547180119 704315797 673694644 709396851 233398892 21398911 172478451 83072540 781493652 484206148 15222473 579637764 816674509 254081577 748514160 870663483 604874537 47822762 981860977 188904775 853854798 942963189 479033901 693576095 372338932 485664620 53990743 654652977 588002155 846015527 694594424 653225437 163401234 956941424 106627946 766400248 758993377 136691013 947925982 771649994 5311712 804379353 977422806 915836176 740613294 799925523 512298795 933873786 495049467 83651085 376916744 745259310 352760334 282382998 546915437 27446852 296648511 622755505 412495021 248908615 360296318 918030356 134003696 122400442 250406347 864096938 8366514 415199889 541954491 620810001 862684482 423923380 758572538 992679197 405910084 373741952 1919683 591444051 806676271 868377669 430832234 1447535 140310992 495150025 570724306 307823582 271692742 224233667 510464247 877238341 38184195 940576865 153349478 204622584 379247185 257006274 909607616 663810947 895442891 36325757 377994555 392043045 303530847 631752729 969588768 630610512 972437331 392581779 736297550 139905323 787268285 361991643 473750710 876833296 781853194 229341782 772171485 221805838 703508856 731394653 420107101 363490151 59628955 108133053 172276324 988655123 555604956 394062646 231624755 594585660 287702261 974030588 944390048 282887616 127933814 537561401 527886484 258289587 955050052 108477833 994078350 457390298 411047700 6448252 300475679 741581360 528704756 705501207 304002156 513068389 388879043 527774291 903538607 227259226 534838196 535636893 203119030 910781606 302822863 506646357 56816995 873716756 430528112 49802831 18989610 410838307 832086214 584547668 514234518 77445764 21250133 525746082 141290692 960341664 447163253 144697192 466674918 733520912 317717968 906659403 302240193 102430243 224307944 861011428 181404975 588653915 944727695 322068032 938735774 636639728 579707756 188131934 405315472 770510411 960715645 243698357 71010841 606413196 562549904 660392363 901610340 391088133 358847688 882858527 423410734 1323965 52091678 247888864 591033161 205152495 183664606 188467 41336347 897831560 514495782 845748305 471441692 58496684 725752682 296243174 534266460 476730161 617846771 550572948 653645818 519213090 746808155 702271854 308597934 849330749 440056338 841445245 901833792 64879478 398253788 817716287 121172494 573121394 645782353 92906786 394935178 828363277 959620188 931901710 851430586 356286932 317980349 40751320 88207543 871726220 23079815 895406544 314466862 209378217 257391266 827497012 322992610 586273496 26794314 451540922 899335976 211155573 936027790 735883786 976563305 703468053 483558866 197904194 525889955 374080254 227993421 514152560 730717417 957339306 111409292 263906843 717433566 123279176 444472045 497855675 967328062 448940603 472997925 300242748 309592406 561413785 206287547 393410432 932234887 209358253 362036362 518509274 275118279 546659701 117431107 724443283 156816159 16345380 685822696 376961128 978662958 43395489 513252435 891108618 345965732 269875719 149047725 859703453 156506056 775200803 54792951 623509305 796861939 489129209 77213316 353250156 201347347 183888704 558942589 30955703 895283497 654069729 71440988 184357388 685285579 382241403 436376945 767867991 965980067 538923490 118314336 664277234 240701677 181264028 672320929 55004206 468562941 764525411 24008959 631038929 331759799 573226917 924559386 627238803 664174101 921699335 709875173 234867616 915120805 919748830 846965800 210119449 684146952 913248948 214007295 881794707 212551285 870621385 391064153 231550614 394658099 534100368 303585402 536175135 683781922 523300141 917890681 326529822 244386867 656206334 986883011 438139129 179515115 545025807 427960214 274120455 893841125 48916132 725523335 905505046 264943437 599063219 43215356 676583398 462933861 653663079 58261683 527197100 230624515 600314782 180698937 399522448 2043153 186667372 190730100 376673583 350539276 782325910 945055770 672281369 542897286 64207128 80159031 492776276 149087653 904096 216642731 758374615 705068449 508473360 172652714 616864016 501421641 261507072 981935162 19874399 527810431 199731513 781269944 313405080 160432055 620236347 920222547 433772933 285765244 647086264 67203984 157379938 652899564 86121495 787875268 167603039 944098359 912932338 529466525 337446434 768731171 908978328 714478746 599554626 638024075 80295819 501696142 654960845 766280923 726532611 6962721 631997891 783728278 666107754 731089487 796602008 413122001 854170079 472087015 582728374 545538229 189745331 49414157 603382265 514332416 944857838 724137656 283192625 775828101 148971467 967616821 827827875 185973159 750589239 560229026 492040329 161547746 844042326 427269236 580580749 5176387 250905598 892928753 495240018 583903211 985707323 336395703 155529963 640704143 285661641 958962739 591307106 520860923 601411741 846301227 694778931 907994506 349577821 552533045 213264334 599658160 32327651 730328125 318941208 474741617 432068286 167699459 626355434 280860135 666839984 427664282 722522769 937742783 19042097 803495403 556891724 124583612 442698218 359277360 346151634 744443699 781047100 66450809 792793801 209474702 109910455 799193898 15452496 758242761 258767267 601971579 746063478 506999288 769577338 424942327 816045504 918390975 539673195 918627325 143658663 288989912 59794649 631195970 898028311 510631569 345290458 112520781 161212402 127254603 800563897 900379130 217148299 559667964 861267317 251166456 925947436 566823086 437826368 950902347 790306960 164228350 621520896 639360458 867414633 122633118 723139537 146315938 125534427 138466003 95586176 113320913 476643071 949354487 441554194 40309932 70832225 276120056 654167611 26659673 793549187 936932823 649199336 585419606 239453272 160633643 924417974 998262256 186205385 283839131 831218296 784580301 979744564 196855911 29806772 812644963 782485736 28853472 780213287 641496702 831988394 922473196 758622525 226810558 173422386 633151619 368733081 128986390 177032623 321491252 628414099 831656527 923872319 454148769 444989365 350681731 316238456 834275582 866314557 249163682 806569954 245664662 517361311 422979568 456102011 786740038 481928960 770087045 782671153 808781056 688576444 844682700 553624683 586740810 835413216 650999300 795226241 551648188 955243952 611594178 202864191 747678086 93714211 110905965 659897190 714103271 980534370 485812929 808921387 139814839 519062861 333379917 815351479 824057054 474644725 134103285 898676133 391003354 258962979 562636144 308025990 582590270 227578320 706261450 259506016 35892781 560060331 996003044 978901547 32770787 113266326 354843631 235626323 152426541 861239593 165589749 430332473 103073003 430753838 682650448 875327922 938859669 367140131 508324913 901478022 953156531 179256507 507865882 934896114 336487524 443846493 722537572 174506535 29116632 126341540 729275322 44128968 653884886 76699869 270986396 284899696 404200247 676104588 161703645 176580138 175217257 853109735 563468582 498803191 37602028 683413081 678500209 451397452 78086872 505103873 974593934 447623825 680708950 971041072 193448865 224875171 902641954 696892399 27391650 135341906 846768400 343827574 587846364 40592356 839821444 632678838 831789678 325168016 495020536 940149201 453777357 916631556 705043322 909671580 775039552 486811616 221577515 58627108 255254115 509511481 891166657 143058726 350394533 979428375 532775174 310284181 270893001 203061495 77812822 126199063 242237289 964556617 41481509 887003529 152653934 390117875 773349239 417400183 910959001 875359180 217820774 622928548 904857086 13964322 140021408 99967112 455980419 312788789 174171879 551402701 893213030 170359993 190587023 6063058 923044532 29299800 651875843 586774824 576882387 938618926 652675904 652478999 429243897 648059723 736825431 806484506 110865842 49777205 80635376 270119263 400567134 418813283 712112066 689493320 13339824 285813699 440288540 988786412 328566320 888899380 462817631 673771926 863594938 41104141 24763010 208991045 138466045 736883348 155675533 843895083 38679037 455581064 858414878 923770927 449054610 996230808 856960487 93647211 776482791 546879466 289730861 573015726 252082427 837270421 19820363 505400570 750845219 629817383 842867757 838062343 730461574 471664927 276338646 254130111 53808288 551413620 774415066 64498368 766205120 635424268 260064484 876624093 293367945 288607814 112466226 356681373 676643701 75749489 912642836 627451578 938959437 647499346 71420016 225337508 89864626 556218786 619186753 23455484 64722072 741431438 334287123 662422041 119209669 193962549 27320201 743661702 780055895 28294446 449904856 49768834 389544763 603555839 238321481 884831614 451439031 924262823 722974906 315318947 347778784 507632149 272610078 740435786 649447973 70194350 709647096 680190593 630615746 600483531 495262692 96982669 36766798 945825336 90947343 86793570 861765422 893497271 679980986 820746029 680391967 705526651 708666811 419547851 137245616 927047597 798492667 77750863 597921477 145268459 29541625 632510336 718082326 107550404 285223749 106792024 174860461 464563261 57942534 779484038 726523244 933619791 13966709 575570669 640027013 503726182 325654880 176899107 219846656 611662051 798759848 742572275 775597880 604447131 90785475 885453275 856097118 890235991 463163962 136858767 938917621 397355346 797648172 248508020 316102996 415570366 345884874 282135334 388222759 720923199 298791641 40497906 60096238 794293102 972997683 529471324 673348989 499666007 934084934 620448667 218413179 406947067 805391507 84225304 814481123 728394447 77097264 926510067 193977733 352391996 22155079 399739262 753472902 404383773 434719893 267913919 562150619 505796164 602585835 951936754 293089491 151950836 465894577 715886597 202371722 285450600 174899038 839762715 123178871 552753483 190952449 319905546 676207583 617578302 406813627 775751389 6645087 822368342 150923843 368426066 327076710 829051292 256079968 778218076 16452536 533686923 463497842 238029730 485659884 655308180 8262890 152223998 553984239 338954397 338215118 150155776 707272063 485643134 783483446 587554665 262028977 104442499 316640977 41604016 89297260 911148269 83945057 715601792 361762796 514134897 739569466 961980472 783251008 129253047 395066055 477933674 83176651 241867228 598902278 895750236 354569414 710602480 361985543 166695050 735504061 828134265 652210288 4471842 915514126 143637743 176801276 974382982 811715181 494180158 487922935 339633358 577262179 976901959 312610244 698625603 506699722 677996382 141374295 488969445 94819155 606195149 67372988 240059110 443345408 595907920 266593934 366079533 868140970 644443544 350764928 723317972 398593404 371857352 481259736 328715691 478614134 159134971 578950639 376664755 181022187 852172988 509142450 870205347 855608835 215010187 469295396 143105125 952484922 480380255 707952090 5844378 774673887 604946975 101899901 587542802 95643798 777715240 609041228 587830870 465145046 893683914 951100567 145741598 603870828 849976011 591613253 515425755 147733750 412061410 782884687 921417262 468653673 211186237 850049090 594555247 12632972 643988732 15921601 960002855 748134011 749634227 350633985 468795798 576198948 137345772 333086284 95450158 72089549 670620067 220102015 474485269 907163532 341245384 845590155 415215271 82330830 705147328 164101879 903040498 252495825 749755877 776196444 868819257 116988201 658126081 764703720 138498418 611994687 455291607 595127004 535181256 839504845 391010458 503054094 637235225 194883683 990440308 333510248 57813880 157313253 634786561 405387879 43417772 822996747 827782609 479800988 657637040 235214304 665588201 688186671 608718129 300304452 424891202 200591191 184917267 648681834 545873993 719795683 211351789 608780122 670952030 756153780 267531144 762903408 156869205 582404160 504834147 445393115 95875832 447479313 213230130 467133215 482071938 726432580 305889627 90389652 224661541 648204811 134677111 9124068 994500230 894284075 471735511 555195793 717784124 197323391 139320061 61608044 15151444 549699955 14311198 48036383 777122512 299908489 61291943 643582117 251189027 761605848 897494453 775781836 588629686 529653896 516262811 638772154 307787367 212235607 948551520 40282469 175200261 681210391 45375294 710000922 633434325 522172461 502468645 156296439 965757968 814835732 561230389 639888240 866197858 254189528 884431175 525578701 42446701 254627228 520392037 604922539 114833476 501361684 124039502 118851703 166739440 698733835 553009395 44555766 215779567 127601631 491289597 579720896 677747888 472796160 963481156 644143040 436652568 844758388 594089049 912694710 948343808 786412374 203043325 513637813 201758644 977523282 934704808 205593509 956667253 980195627 549841923 140847810 215955704 12297014 499756654 480793627 869246950 215280860 422465403 381650708 713012826 490195484 919907953 936333284 72184678 239401734 803857610 486852632 817949070 130971713 682602165 411354894 132663626 812175750 481758612 400087675 951962505 541936162 375962751 222699750 944000041 705128824 129465024 856123946 363441280 225696125 721702997 803089400 771563990 130851130 592900722 170186322 832665576 978080590 319430140 224444945 972195175 245061738 748833294 309419873 656905847 52927443 883672184 647182400 689236272 651289059 387324475 224201474 432956449 317654151 561880590 779386064 150936264 320861122 31895260 678485028 349075995 782314025 47572548 425511246 637774082 81464678 722352920 849461490 446752986 392546998 214826974 516155016 287919603 139687786 960309074 180978395 15622675 81037161 971728610 85748875 166120690 499469229 623571249 853771915 767229116 409583810 67743892 776762019 425964178 537280330 325441432 618516463 310696713 647274107 245873530 945011038 6481577 585418399 499940525 999793715 639001711 530385811 445945688 481878664 352271947 383209800 290977237 1444294 719260579 420234310 427919156 253574447 575518158 840449060 596389302 504904789 312084634 288712209 609813330 614015391 96827079 212725070 556377139 522006731 928142474 19045810 4372791 805868390 473718283 402589221 591998578 654746454 574268391 746752293 983693225 921197393 548588974 500392260 57299160 19018595 352675942 214672295 563377836 605920620 963361542 914487433 491397898 123402144 210127100 703411126 152709510 912554245 358804136 70833936 368409581 725276664 992500703 169400590 911018172 160086184 452192872 192604472 648198054 842046362 904553090 752125100 133071377 413945379 28389213 284436124 783863193 396778737 765648796 544820942 582240908 781435011 169317849 478834202 970168429 558543788 366998817 924872432 945382514 320602132 549399412 918457296 178500614 621636791 887368774 307200463 352282439 173115492 835643137 112760088 471852425 700878399 54508417 985643369 910674897 545548351 461651606 370863250 212583770 531617200 430761606 926512890 915529236 310544307 777823112 842074138 763399968 30948793 867184713 655399679 392275285 184000524 585443435 483629772 226870206 32293447 766729473 78197558 928251930 472679384 577597205 822991622 2823515 293669509 57100323 247259803 672855079 598780132 371622555 336564325 447467866 639527649 198405730 232724843 628839554 460652604 252886353 429659590 508466786 505808136 697453493 96986916 850678127 798527022 172392141 233960774 903623254 288312808 337205072 124198530 886678132 896195654 874864100 257636417 806008924 627867564 828573096 624861058 931903061 3272530 929396395 620483925 12634842 115213763 913476210 424326497 485360408 532962654 442907766 287065696 855087987 859753688 6893732 865635485 996310529 876727736 662037979 33231485 292284173 765445850 371570289 503030003 438031254 728099053 858380463 944953865 799950797 457180917 5616464 392768350 130943899 772974793 668042758 250260643 823238936 167083414 241174517 864738845 260172565 509110362 352731702 536250150 834951059 746115690 520324694 929771692 239230026 956003820 746302164 850712497 337023779 746440286 843832230 527607241 114236606 518060301 104807093 15109023 85479661 164158367 394174556 988565872 599318839 94862474 953599981 513133966 217262934 567340954 939028012 551745758 622776761 277189743 336309202 679357275 912267267 765691644 808876555 108472977 991504266 894063626 745480440 812763170 596808153 261376947 235141678 945159237 69552430 3759079 17345334 124690498 444745981 806687978 881040907 725706999 991841899 71908308 437373855 149002070 427503315 681983759 146985045 297472228 270018629 263324381 784397960 758704188 561884162 790889936 458141955 562162570 107220737 812716880 487042440 931731217 581950574 434475033 487497546 871813541 308257829 927596730 958900594 758155058 753773371 589005334 534360477 101461299 635552886 582657511 198825052 925812539 453076688 279640374 229787058 279264112 634772472 134035172 998156698 731281162 271020240 308836389 823249535 439072473 190829040 488772864 698431426 317839293 343454242 699229904 409693240 572300075 180462820 811232454 826943657 798632367 1515753 380016228 628816466 319107428 22313624 287533571 191842660 617486974 700729995 118362958 427421059 165439424 354503698 430824389 995843143 839352070 887800238 188721979 562779070 940809661 150742422 556650585 581239528 8119654 824627253 856276249 436976186 828702231 86139049 210981195 711218716 195133177 198954310 592864019 841648491 175270603 187193361 674307945 912176119 218067037 892498246 568571031 781844742 15362326 939282387 213797567 221602256 334148975 911931866 595262035 523996160 504526710 257901875 764596891 308561465 933041484 910198759 482570803 120459919 401092519 720264374 242571657 414377738 100694097 101681042 234441059 203411495 203682471 900072482 314184024 10640214 31724570 341251136 134453842 67343229 636896946 264446587 596212498 212077939 391218054 303014550 582199980 385840262 54382405 631593991 738611462 634433782 576120496 698099833 69089630 298355319 570127645 160692810 747672257 239849651 27091702 279282958 364346517 847777222 915344440 204315146 182652176 622784192 826036469 313605306 732238782 222835751 524138962 654706507 677043199 885479026 634663049 297885985 303746438 854189711 366594152 40705363 527607003 381531741 969166033 333446442 735522266 379287347 308742072 379646630 471848498 425996376 657274920 878595833 929264615 762841992 854302910 63627529 555216337 918831989 56674860 680272370 337235995 917356100 891282360 276772738 517226692 43384844 452899770 832966332 819584545 131005787 937059361 174407254 126593881 450129840 473013999 115514170 878069480 459299330 668974777 841686792 492917533 315427639 224250152 182100627 877247131 911210670 977011578 684709984 693125340 148928182 645880577 433852202 166590633 527104788 65605539 853177952 151173795 409145729 721463384 800289957 491316158 458791978 651919280 610341456 78192576 225964591 868290122 607106538 339391943 679597604 404398430 804590770 777338560 949444242 474763060 446492444 831804400 961722487 522212267 935425357 749643631 136725954 727178931 824561569 786100904 19997656 840406227 809645862 612723931 560223250 590586788 286967838 516600732 544548924 449085011 738504321 80171345 109220632 114435619 620406392 875032503 43450585 171051753 316844259 568784477 791136169 807443342 881686485 511699239 608098851 862121105 246841618 770331852 919705561 699238530 628249240 37785945 839327183 48475784 909966099 807456941 446565118 436697820 525707879 661239035 379619026 49672524 410364458 507124554 612363181 761663929 742434854 389642232 899575650 455380121 899964636 291332915 215271866 421493622 414071804 724106111 136750322 105961836 96790255 404385331 313558587 489725359 61585229 687817723 317374521 909896195 452183911 823071063 227429253 580088642 663340734 548052763 123414827 528531418 582842505 243068653 169028396 870273612 460101684 833050059 768695037 256029614 400149467 236017794 216333319 564794410 895094483 760304184 670109221 281383293 146005026 399333090 131896873 90023289 424877314 433035726 253559383 610652291 213505378 341921307 4891879 357536277 891828325 513723196 903681671 986934077 581464288 162450298 626858200 366252829 76147680 91813487 851910893 509837673 359682338 184116107 139145679 73076460 259513754 813964946 489177339 752985603 292033005 544078875 846152929 68866336 342972662 974007315 294913383 315678536 832381509 111684664 171659365 218405014 672044187 33238175 984649255 57714358 805211759 639155247 392028142 696370026 384346732 434552612 192011375 365068041 340405233 834883468 595401298 277869307 744529295 926109645 248238772 824347198 690894223 602285341 115319205 716575716 223067242 387305993 252401323 621829011 857967438 672447727 398873406 573095939 55195296 147083395 428095306 802127748 744416884 676196942 180898224 369672821 185039639 658685226 602455236 626983374 119155078 678619079 571216080 625507735 883231220 12913450 270294160 936011630 920952904 305123113 444342197 98918662 19264668 922299120 576910690 755931298 711596991 337472382 242738866 19310494 840325044 494318633 880051504 490375399 435834417 924825878 615276381 81389949 795530017 331790786 28129069 310984440 491210531 717862268 107432074 694153216 602604040 72491496 7920080 492572884 139257176 55077757 740975183 472211908 657246926 204988424 486046925 94033847 2589400 410182951 629760001 735245478 556465944 580369103 993252121 304419359 439865573 440304071 104230453 239367107 564999115 611745835 459268841 654016456 710987782 662538217 221279423 104755063 602941195 801131335 959382963 160697263 495188480 694527835 933502133 985860960 883186239 298132625 104485419 772537873 808792023 555415338 786068076 720919644 215215115 866453943 998706757 872360044 711721425 369895841 689129848 888517765 261384787 968949669 678181689 811426173 674807666 170292816 874114735 352177467 121098814 665398919 127992185 125856063 857153919 378876930 226597926 572919066 32203823 256407500 506413755 243596017 717001726 771144901 669317938 651142142 368202189 634843680 972380661 161664783 17331763 99125733 300258919 171868933 760140283 722036592 347011419 558337879 482714788 475804656 661380507 210579084 482866912 754592489 273851490 431017668 245817621 98985139 84815842 843039792 88783327 711073016 5007808 421951894 604570252 834163514 182438803 596813518 734022558 814953802 822858088 848739143 430594381 494439890 491898433 200785027 40629763 18917581 619780241 308591254 105737950 257205769 585411266 544958123 654102577 475921836 503373231 897742719 276369923 351218348 583963946 842874852 80428174 89495893 400969335 358449472 63664833 162734535 684477647 863718411 330133183 829020278 1226718 146765396 263903326 379695272 218964550 535595581 80982441 532779771 505539610 673905787 211931487 775494108 725811043 261277399 641851761 387380240 381830815 915611823 307335559 239270191 178572093 493772149 116367740 201323044 235850786 12958511 794515422 906431407 526430759 612904181 306768495 826752227 15410840 65313655 110143654 639622056 402765238 494504309 75027503 713994554 350250806 172788292 625146727 175120552 647383233 414483024 274172385 449719638 756081778 613098900 265794787 778447739 748644187 781820963 277758441 76558500 876674048 758558883 238164257 394827311 445482714 304471245 192428014 126967249 395240149 543691759 698791782 755058705 341875666 626685290 740226260 70026442 154746662 406745395 884725814 108781997 470029337 606352470 578042559 187428540 202757736 586127727 862468951 538607312 343024324 86477103 910686998 881968149 483944785 862511325 984776141 576528009 901386792 473720018 717248125 27115648 520444885 530068220 46983133 390907683 422499801 139302748 625604312 13300972 696254761 232596104 829915405 693333035 376713901 505084969 978905934 895518084 737395650 309685630 833032225 852036719 424712889 175675864 446462530 860079031 185143125 722587932 497385247 662793724 960603473 578981444 944897882 529338929 420918488 414927326 202020683 723768862 880665355 411277451 640223100 220060382 347421823 758196097 584688939 158679906 639061436 822540042 647834827 972837613 465710527 816672003 241181827 752864663 689547896 563076958 380070573 914465482 159342413 162148512 689530456 751579080 437748630 963658339 200504775 420860450 30728479 159900117 35716848 148005954 36242601 400724536 735026174 518901731 397288040 251415392 46644176 215263891 169623174 848890936 971942007 256009272 773588383 603930429 645521852 824585608 167803203 539328769 229664151 554773647 949898872 900567210 894261433 921890605 234986549 478997616 111553283 429691286 502998504 476922402 313501709 883284176 715870193 276830626 992625568 555143992 564800037 299781476 377407036 586350845 742406220 230412019 245331859 764315300 843678882 731706733 903696140 73191810 11237466 419353090 80851521 326239301 4324886 754918008 821094273 527595372 622677105 949587882 357447759 619570122 918286453 206843908 692734945 946984199 437265957 760395273 517637026 57799199 890137845 939996366 810597296 650899937 551165516 827719292 120817502 373789040 104204297 578431697 278400947 686713542 344914171 987574687 865255402 329583916 971915624 284245324 436145648 895888836 439569799 938343249 413937385 200993791 474711558 197593787 592362924 935583783 556767364 813566637 322496322 535571926 668837400 546713308 173864811 951752317 958109128 255830034 815491353 376207839 601834259 466848939 346071794 256658067 140728936 276394779 256120274 691202693 198433196 441985125 678348103 922095989 503612088 876363429 898638867 996953462 847138265 299837832 115915438 862391665 592841295 854740687 968016322 862898592 332573390 502280400 75288237 602278419 493888000 655037684 376547842 308952366 350459648 913216058 634084872 753570345 982751200 231072691 300584761 888128399 368408612 769499908 174778053 822366143 810637125 861056231 35557133 217813870 896441648 367773610 885898792 453548579 819841220 210569134 972860513 601145530 578213975 87023593 555572406 325755362 361041970 267122789 63710555 358231199 488046864 841860799 293222453 733408968 656328355 242940072 770543456 532768650 856108047 178660968 356392362 819471331 267252845 778466134 964456725 766762280 138651466 781457505 267785049 342486911 871421221 739417738 225410143 775061606 613479924 562068327 45757127 120830250 432483232 101673890 238128227 899998065 405759620 736472440 445932218 127212465 987855346 304182075 860309382 366751158 481426606 31791568 864213302 919601952 528285041 385819954 391276909 191544290 634705767 677177069 428576129 488561348 148398769 88442020 647534844 662787554 775898852 805325451 872684063 401819948 802256777 151053805 100640346 961922276 175679643 344557479 143215829 668014627 799642380 81278123 992730347 833540435 166366016 927261823 524978857 903676598 399435151 607699387 442248532 133630686 394204872 429107855 515603936 22314291 757806249 97393466 762228089 539169905 864942696 144534676 273057790 443634983 907540781 122997893 595736193 970401336 348809877 707607691 962666440 741381982 144686897 220145208 126367951 49688482 521603333 469401522 521106244 178565605 470753289 564359730 320334346 94058843 210938027 261131397 80858039 580640779 935816779 604959630 86511381 993946448 499153342 588323010 163134884 212048987 563900364 59620522 494495767 527080622 868175794 85207909 591443155 986173090 815324577 479211811 486298739 173481442 232102205 196306603 428100678 253781486 658495006 733222358 162358479 764488857 945514066 787237905 749685316 779646092 941606617 559109343 328787216 711211457 463343144 483278933 953333842 319610376 823953063 905207197 619742300 615639429 432662323 927345523 657517364 340008240 314666397 844147883 796865302 306281299 953711912 53278377 142891248 748470800 118498575 731934183 816570084 407080409 521175293 493183091 188975817 281069558 25026451 672183406 198721195 542341890 737614565 716391054 392352071 789634414 686910205 456339612 877149840 178859517 673450071 591535607 79438381 436058694 799415907 776655888 847671288 820502326 388748295 404983020 397582464 951570315 709094938 764283301 475601800 400682074 442649578 367888105 162714246 895746953 126418871 140756345 632327461 394535510 912344373 186227884 521862083 762336718 171488270 17672425 606038003 969572695 194265182 885483056 416718077 202299687 185986357 568703122 750433369 587552458 743907609 539635892 857115192 604627871 718590593 54064209 952083451 375448924 590387803 400159413 943369913 118845574 513171079 712298818 822390206 530920698 13233241 640500207 106663174 534210663 631335195 978144196 996444102 73502417 832168584 265069407 414528740 584899344 364184403 596450674 865333626 548056399 544018846 867055426 292861783 412250509 847315843 340701482 753298301 594225695 809324943 93484310 163478180 298716716 579567426 924177672 855120822 851971632 72058256 687467415 97352785 94835833 227463010 587877483 203696456 860246445 827966998 156475586 454122786 330353474 442526203 800127982 799055514 77489669 215599830 596691413 545606941 143993492 52599393 63336816 705990991 687643108 815203014 344196428 447569798 662030267 844586792 660217868 798437965 685878 544669722 883278053 647400163 934552901 719129637 802243616 450937274 765821738 712200775 674194331 518140152 760707838 597044847 761992521 279302905 760371756 206120962 339719085 778976971 265931764 968614489 635913315 246156976 179218921 180728129 881843352 201993888 907755636 425155449 554508685 59607748 430991695 853123895 963915543 765343740 672269322 636166308 949689890 414562394 467818121 295066715 317067049 875124133 725017987 87029230 661659840 443903447 685103877 821858401 334825483 768133023 62130926 442210477 351358276 499104992 302413680 618820158 825271352 808162096 878583189 565133174 49028298 94203482 376120248 989574184 896387439 95643356 49028616 289511453 816544689 539752042 339837192 57987474 943605933 900223593 163957266 738955192 523388308 354970229 839729103 92860723 83442221 886852827 965226176 462859420 437015378 858188576 473898425 43197695 474312558 52014200 667399264 478848606 936648966 582370383 691954611 146388524 231794477 42701508 673926783 338540498 928880141 657613097 425069545 312859437 821743973 305341573 382470121 921554190 352784646 8100882 255520714 305290681 300146517 172052927 119591084 102527846 794021325 621664430 586065922 530434244 296404346 382652343 264606741 152458097 537759614 273352676 616913022 360710787 735910287 370340083 698613424 876914946 767478391 405263831 396315244 194100843 418262675 218653495 258541642 49326383 163549269 711859182 498258487 586487601 343923907 111419273 410924017 247059532 717100533 595524812 401351565 47918283 506774938 276416557 601335282 106140655 405683572 752311896 738814812 560668781 752794583 301720745 83233753 390395629 30112302 72553397 694367183 297874060 39982966 655496129 51558516 699820891 732736194 321145161 861525077 747339485 948917173 1390459 313840080 165764749 529387787 279620281 18588569 534020182 735994640 864914203 444414777 408464665 911860263 864244459 410088330 468751659 149922116 23305511 186576700 281376980 15836786 672952322 238253396 484607696 907616079 382752611 904539560 679970002 945060235 93019492 718783332 377445885 469794669 625715412 98314119 566390121 436902990 921227702 452335975 231049892 65415963 860410304 821031209 167716398 100387031 885727453 575437898 578108923 781830935 479265707 351085081 807118325 602846340 259083262 334043194 486586488 187437916 869715803 389161764 898110164 931108850 803469182 150838948 151782351 521501994 259723476 55705688 431055392 913595646 61530369 319773237 476481781 453984507 417953116 283095298 328739950 884842692 509263726 886059226 116799007 274964110 137271159 927169966 165592978 318217123 405183209 888545729 386886339 269109983 527274731 697960490 768079010 832258870 959070423 927635285 137364885 302070828 716151996 605166978 381253619 506111579 853408220 255222085 610783882 689326065 801061167 266508292 377273625 2864431 389829087 537850493 937609943 416890091 820556746 820563261 347241194 344384271 636226052 200005417 712344817 892869911 634677074 333073401 303282043 949432471 574485167 501479608 114090126 551438771 171053515 350342726 242921505 507779494 523564935 291529686 727972513 719041340 173939834 241938800 967464816 11394903 409121647 285592688 419043169 36660589 470698981 165312517 201237310 419558920 690732685 40752051 466279490 288153413 397340112 719050193 967006368 6951254 142496327 884283916 85369850 312943360 719723841 196322274 617534954 354818589 970222400 294172456 68822140 941949468 996301948 92783237 51334834 546770556 617111390 210364405 589230335 952333140 238498566 650594118 947086285 149716942 305732038 442758302 321493495 64563368 179124645 77490931 96718671 882807986 332557534 99677329 190412057 448937810 52247134 404833176 980761742 739010307 399091785 818982012 320684379 544520657 427226229 931192451 85684255 491419102 396254445 205546058 400831216 212573665 966852719 204252225 286079959 488406434 243349743 21030186 574047055 151040639 891264530 862999198 248797386 820687339 535699892 404922248 349535532 661101033 604496482 277026984 455133518 830061973 918055393 744812817 832334972 492014491 133943205 191609003 577648376 327338686 203591514 567378098 522325621 788994643 587149151 95440949 508853404 29154499 81794374 278302872 881008522 291830797 722690646 309714450 218790480 161743937 218406409 919883312 306612082 641177094 693452430 73992784 227766633 702827797 316855624 432260647 562473249 405139131 624897357 111156283 20736123 428437595 784670183 701504618 296236748 747848682 177009943 551885922 694825820 64665201 761084429 589162022 327817705 675624591 560592817 836520079 204772129 515952884 141806366 77633481 238229803 502856935 863135777 283452370 782807583 673264321 91424190 850748670 659445385 35682928 320361644 723140725 575065578 659272693 59361236 479435444 446070071 816724454 601944789 22813704 150875480 564677101 269480579 129938198 373019562 121494343 480003428 492653398 397953150 953661253 610108466 93135763 747314584 550184910 345638491 101588588 380025008 598502875 459792516 242827479 825834484 248614906 269338882 18372761 154652292 21102285 888057951 268676814 353604853 237172104 311266267 951981671 1264079 314995317 199756776 806475943 849350159 228060019 943819949 804611494 117417894 7613555 306843269 74580174 362333175 430423546 106951293 624425313 81159773 250462627 26063577 715553520 247378083 217812122 815248783 672321509 511685002 747168289 921341130 440442875 327147846 850537487 297304936 34582208 940860929 105963339 399481213 275025434 244107863 69526102 764212430 460376255 194639321 443893695 696052055 182035131 320300426 967850156 916623814 628522990 789831781 86859607 670680061 475141771 232943572 42396559 978079124 947619739 219259962 28583219 715372628 803826552 128602987 56028859 855173309 851073618 374331695 275535279 123247233 820303533 99760579 889593133 275532551 302163425 217288791 569461863 239974889 633343129 81045392 861367075 690065782 938327893 237219848 734779961 664244528 69149928 927425225 803263513 220107855 350422266 450145238 338302274 437842493 303924359 335115939 992067276 381693720 553731677 620098199 888090847 676929076 76280226 574221201 987907898 656965782 654809165 705262176 283000749 769494394 263180712 180127562 563487391 817910477 37542613 306391686 571275656 684317107 163751237 603412674 989892472 372799746 458483010 384643485 573100943 762823110 406299238 93327406 18010499 880865211 45226018 615360891 577612829 721162198 692738105 322316547 963239355 850256061 909960002 614192949 931716816 557218634 513891113 44095479 297013344 928038156 269543854 793812768 37612677 452892869 828714212 927871229 909701356 67778285 566969267 114998480 567960408 827381805 374495832 410221388 141649950 196957670 560617696 533136667 591821992 50279080 873177008 540556120 495374835 671743675 527859712 551261205 107889424 912983193 513682523 47373014 960248230 255609713 350843168 803585300 684159086 2977702 223678212 54359228 667134390 113570638 436704654 218064045 941571551 470223028 665047450 911278398 395493343 90331351 386162135 638530741 14674880 304348649 505665865 932954065 794391327 586372048 927050695 623382081 306220974 840843432 394060414 17487658 377770930 878420286 44834924 153118629 200210053 412469143 467042533 824318270 67434773 861189479 780583442 568713334 321778275 348588187 369797485 68058946 899385350 271079888 585024583 775613323 580921510 924968665 24334403 436729772 890526849 488607036 902251480 223367415 78618089 126601397 802192082 62379568 246318019 268308403 326062801 558879248 738780169 529618390 88145864 404036035 114870857 176837751 500825727 383444331 701181989 802983712 570236178 445368987 666437585 264235535 367776113 353852636 208633496 442176696 207600094 732875307 473935192 526151744 957262193 238471545 393561857 532899331 207794839 916229930 950504729 817576974 569474447 920937879 640917051 342034853 736755436 487442828 102403219 997016511 181416982 489043658 777064036 168125829 76295624 333770886 876263554 278606039 537317523 969671656 273535192 248867014 183377754 461755533 186063588 557278747 698741205 805807878 134677046 652650447 771339022 585394519 367382773 582322065 413695462 823268728 365491289 127276611 239356817 21059031 364207922 231320701 59015702 160096725 112057952 717502729 954530512 532456516 526027608 881566565 358312687 117495792 501889190 13343812 811215864 653841427 43316837 293613069 209780801 556158686 275095240 149321563 800060278 199813623 614377621 516280187 725225751 340447477 35147173 507305713 828668663 503195110 371368806 756232179 957090751 559101899 834429273 394928876 516691304 500896534 867598740 528627451 794510789 557012530 4087104 879753841 269909239 999537147 422923548 712275287 852242934 589931074 236825080 159628261 962963215 734260810 2083131 189168908 857603169 430383950 78656862 93497070 705514079 78294265 33665135 955164512 520163921 932212716 173549199 824497263 439345874 477350971 103788660 603102424 76299859 94128112 208205288 723984014 433610135 166321543 937335880 974493495 581589045 419974256 229034245 984553136 99659546 404498321 87710246 758705541 835251972 187236801 428564165 25587065 877851912 526102094 550004622 651384836 824360204 640792952 594340675 280748752 421334093 825450740 447072570 54749244 603278811 583350889 518794205 770184665 573032728 117395958 849743145 66436335 453629501 158149803 738468144 776464121 156354774 368943883 603780759 780832292 157391936 889470864 353064728 943282133 562360882 576548647 160946689 761650464 550779185 132100528 824776884 648916305 387742490 312108159 279232293 240874087 552481180 112788190 300142175 16879508 318486203 799108233 484179199 719331263 949010255 413847088 122028983 625135106 324917635 179053048 510069709 670747179 647136598 832162298 378264473 434210111 849626909 853728963 633371914 46248947 550856191 174812627 643526690 951890226 674028663 934960158 170294133 413722778 645379798 422620302 824006830 726959358 970595775 290275454 955585291 134650597 546239657 38855744 577168860 135791369 293416033 726245273 403160839 968383706 624797573 600114240 900407687 19704569 49374986 35016802 198899689 406796221 316207286 220193057 267810509 527989169 599391142 429856016 278912363 887297556 340907210 699613881 959417867 820653399 717632868 453456663 159307916 243498915 344155021 967135260 15260382 363880785 365604528 377737004 83008392 74827119 732881933 815808928 323268643 579542594 121560375 920687429 763172316 300639166 516876951 118479066 741524470 609758736 919634918 667765909 185412678 639227413 363845303 800663711 135471541 634264032 362326763 450039187 71514306 138338104 126974266 564685059 251641853 108696087 26009521 448012275 498200205 131829548 39487534 286881116 860793003 331703898 656724198 548729515 398055973 44678967 62623968 298673215 518028508 111259022 7664248 408415214 102649670 158516701 601372125 122621312 964856044 788593624 123104146 16709939 864332525 536344804 545951985 608513077 697612410 123531420 629769379 634761005 752091992 708518224 352312617 333460659 672983137 561732737 535774551 877616084 133327875 253874535 100942547 495474319 593086143 680193387 629935258 511298650 804566443 566553773 416318332 609816221 722152689 372807807 345837723 449353013 456045134 615175655 489055216 236984563 52427156 428886561 807432390 745533979 292442408 802033947 516983357 527086822 464569476 618447352 271586760 223197184 861955254 975740814 148257199 755225354 501617887 673215720 847044494 435017497 800900790 694436804 779935444 480166709 798036227 332887829 217101125 206120667 5549604 763760514 12841337 469017212 360168587 217112037 874892635 678426620 578278205 903559630 27537066 682413363 986659412 978052094 738693499 230412911 172452735 263532268 872810677 495469296 202988157 861258563 95692947 702590827 720999334 990974562 754477350 282409096 551490146 255085275 8612561 525567332 968133551 121594100 937192139 139366928 354941087 436479785 633190304 773932560 344844503 782938280 989112241 380989660 718874386 263947731 794789295 714226274 54710172 650897602 360538916 392786306 520962776 394296254 608412906 385729681 110090683 47735239 986325937 206117847 129770574 983951631 445814398 83947537 164806703 759176573 632586534 437404911 129384208 895279403 998986967 350298007 809809207 415502569 641953424 622809376 676510205 462092983 569610148 688575768 175554127 530131023 403540540 452006399 809343792 888118680 937229777 640944586 315668533 402493236 867379126 900319840 420656647 77687027 198463372 465113120 148106469 373073502 724794827 592625242 679318303 676563757 468728384 5667281 52692380 217428433 670901897 185285440 423792725 750401515 82538139 290773969 756913368 325834451 986491197 43170727 372345030 148354066 141686410 973280342 580238421 291461608 554846323 312577893 742253262 134215111 648731451 230889171 965918480 306069205 581158905 73265551 27512331 756864622 293865241 138374143 102959942 816796320 399169243 495338106 528831322 503489198 80745427 415457742 704649845 520342926 363611495 91867579 59430616 387403883 382413908 817612661 528179545 54723875 506550570 338279974 194762722 701786313 191382731 247253353 88596976 547738148 371124976 572807120 693014293 659553327 870588068 934538080 932601206 453750935 907414727 362284048 603988045 952746048 412426892 584759886 757590632 620404161 60588027 976107385 576617640 117790691 316138608 347128423 261504131 479907365 836361498 729631713 245733507 606559035 342030717 179840291 671722693 633474955 927325168 912121949 775136123 146477998 459793440 122451764 59729258 731980533 216974731 445884225 160352365 555959778 169568262 256546961 130978288 787601578 892795448 165269027 46050677 985253818 777237532 99811437 668356371 153388079 869079427 714200536 361736178 126537820 987607184 878866751 967716560 970778184 346336826 366129268 432440959 319047213 937176269 320534715 781898852 268654843 4899945 384235341 121440506 767347922 131087746 170046423 805589069 36736395 640617822 793387768 856643712 71543600 328513690 591990470 644414023 396911232 45132710 144648522 428805997 444796780 249360196 640539903 149912400 993464733 420116749 237836631 811847008 324930283 887997420 362073398 393742244 670962663 447028384 440180597 704783668 182123090 80335423 558568288 56704192 224482724 318336174 218267449 884385543 682327942 137683753 519696563 649040225 381068376 882514625 926863223 249438774 343443372 752904921 637171618 248715141 472890569 59903913 422724165 733710174 46062889 231533755 133074404 780644456 991117563 752534385 326702328 684961884 881396641 424204157 210709101 596497543 663860275 624391526 688159268 978105420 600278523 8127754 567143282 952911264 590094071 324684823 355584928 401718669 666498651 252606608 198168681 490292911 11434252 79860558 83708030 478716346 453140517 637039228 936787461 536344050 273248118 332714010 296536854 64577969 62124544 350341756 483622461 40629476 742606970 520302792 457669883 573893519 807587279 211074939 558376005 520768069 471050654 747695333 720900355 592596144 379624633 875405224 340182162 247798287 484766118 840627005 285433667 974913971 453911329 497389167 415911642 447535489 592312984 949569501 828368143 228218483 482046126 949718140 611875856 283843351 652130744 106058260 88676605 791270414 244634179 599819198 280815211 450963598 268907404 809154668 580605154 946663137 527422982 815107425 653095263 620800740 579633624 361068725 564685267 774132361 779745628 394749394 773400481 664809557 166824866 895138810 641127460 362762210 83604714 186436798 28357927 250982494 216496430 68872328 505364331 548670219 731954838 268060946 780623652 794949565 36082689 329711597 390798460 199143775 413398403 582236412 554787343 410608750 251193569 253785846 994326382 592727420 831535127 365287911 614834076 557538222 113342418 270241199 199698836 131366719 739878903 318281857 762007233 149957115 961533978 398289766 587095427 333010373 854550536 184148152 773171633 977241873 350918717 456568487 802346258 114830698 351161966 607326647 673665507 39858669 711533057 496703808 387945812 955375052 226993296 954159597 442484235 146643661 553169002 144224830 255888543 518905289 38790418 287139078 748175390 76030765 903155134 140453869 452136583 360363900 813059545 218813422 602766673 254549962 188024705 380158938 73949155 611166787 786535946 115972308 51595289 68063394 920140409 717777108 785295046 183539898 327486473 814968100 498305580 667528433 976361130 862332134 912432773 131152064 428556669 414928267 607801470 514565428 571272537 362988893 219853751 637483888 298410313 464865782 976705860 869394729 608131852 538331335 466515503 977730344 362419092 97885586 476724211 176591308 764964743 92222193 115820290 105546117 929052097 860266701 614726465 217977690 289681360 506439911 209156231 440627556 731032183 403540818 285881121 396043601 659804715 249424630 590912593 104400098 373737881 84439567 97343178 680688237 841444382 672295597 166329654 112908635 64992333 26176818 687918768 618824875 496534637 296102615 874513226 345151342 684675833 886008358 270647945 37553481 76052766 272333697 247850980 19506422 523382592 126288282 237693768 379161283 778841461 873665529 739634583 98477329 822367240 654912378 214766372 978082518 743398392 541794508 420609080 224244764 165954422 781223667 475885457 819175039 313057899 25128902 360314590 385330611 715475695 697058417 712213828 939476476 760622547 450473461 713044956 351296693 611643160 96651171 356213810 249638090 529777270 864767909 307275464 880851261 475946454 784451445 162904465 89954724 72945112 834319972 595352694 225398441 256642126 525719573 623385556 990171273 26242751 937699583 332382972 183450006 843453157 230581998 835852978 784065205 320952111 612854658 836593583 553647073 81274176 261233838 742247199 174690470 913688686 256724282 61172516 810657446 213235780 348858690 934799185 600289816 113115904 376828086 689330991 506401860 396361238 118442456 710769851 119834120 170942123 163156928 832407782 168773206 136399898 123254491 696520212 947656371 899297395 839033192 163707550 259935162 395918071 102749690 69021520 810774423 930124957 466902521 402642411 566843021 681117841 732315680 546818468 195280753 159919791 979565312 334075811 530071596 901247500 508441468 442157957 829505596 595659630 144792907 812258267 158627635 146674127 943721850 157529769 699640631 301297374 978301671 7443944 677712257 403652989 688160455 756362756 123005150 286477892 92490528 494939742 991277105 289486845 3357520 158673355 740124911 756943910 47304836 562167571 587201441 102114162 983999554 520882035 486863973 31967304 59232992 775808283 785558382 800782658 924617226 917934513 31740288 533826480 10394432 19801805 579364469 780425235 21439573 179517051 734527418 396293794 848265201 443048892 982456530 187443144 832030736 754749700 781836242 814855843 843782274 211265213 253775331 784118663 743676777 364024259 801925572 810653817 8636349 245410791 762688582 823164341 320663499 707104877 435453646 553461289 557441970 841145485 640461782 306281975 161620453 699609589 163532139 223323383 202749868 35678021 581750192 568212786 549262754 861591185 500399451 471202664 742574648 288353251 840648755 849094027 152804401 89946039 676724632 895434562 869727012 50896766 747164923 410638951 604982270 963801115 580083297 259587465 520061309 31657577 236374244 653479019 91066549 546753970 814394674 641078403 541041551 769282617 782751756 949966204 855530821 970415026 140785864 344593332 496674024 63741381 865824720 855250623 735137754 166548110 495803681 134807522 611636308 304024864 869740237 371767449 918193633 678545405 432462201 73541393 784242657 480021919 230469344 738028718 263166984 300359411 149301326 479964295 571391196 676537817 623549221 115861477 973622330 794821541 449488219 214009544 718943697 40309153 814165498 724696674 695697829 59530633 525157792 870634905 459483278 8673805 138445565 495789449 733536438 549036882 742443351 490019328 222316063 640387954 944572168 573197825 685739803 197368567 933684735 213436482 357869778 494967140 59342395 29986733 593525183 708372908 108042836 893667810 217969203 626896057 119769074 237950900 795819729 425398758 764039763 619646376 452957456 15710085 213432009 685958265 136643005 72301915 223497018 17463702 739994486 596378399 603374751 350188962 78244143 153678590 413875589 169939188 71623857 189016090 820616335 411639829 270447382 286725894 667614449 777650244 356503887 758351948 860290807 372067829 146860702 308987111 983547004 842307917 454130972 761216201 864869747 466171048 65530932 134275414 99958882 769255188 446665510 762345959 49711842 712248019 431526277 390559817 846961184 708073949 383899065 915598139 241456991 327683675 877682558 999507700 643249268 209185069 414433380 33219482 689611849 169064550 775218253 77649355 132210010 353458634 221548017 982743320 403114555 737377111 520468829 428550789 4710416 778900409 168852079 522252555 943710995 30277844 73147228 791714327 138210577 84750398 382101803 565750280 466031597 736080833 817228856 219753652 723845148 509770718 155710130 639295971 67868456 199688261 60199708 133402067 725898798 882690655 937175248 728405939 352627295 213411780 399040631 124908072 903353730 686740165 679250066 672110026 677519472 486532323 848695797 830687144 991612823 34394965 418077254 338808256 987962232 772737415 206306946 94145928 505159978 829318037 406451065 506378856 142287060 951868628 680485965 636500029 478469686 979404362 371488503 876077016 110830369 644709681 725593282 602613117 306441210 459177336 810667726 662969701 635325500 590970434 946375822 301838908 631655155 732617828 714140746 735685027 697406273 765974251 487500190 596753071 351474908 890851220 508280313 571096680 508402318 954328915 161073951 78381131 655520436 387293901 930448808 903867593 901931456 547599581 882190719 860129734 63489207 146181395 670000227 187968282 263853492 939237936 267845225 997978899 114148451 455255723 500297848 412062962 819063943 902691119 61489355 430901097 87932532 963279642 899439475 150193955 327113621 820363008 989065427 485216060 6029543 250394919 934180898 489156037 942248828 558178824 481335788 352972866 850593018 700551380 266788498 601286699 404687897 149630957 579402949 456400750 963652393 791817064 882104335 392211691 474765449 372999058 506709322 162747127 296366385 483469160 864603942 365649370 448654121 895991069 782176424 199342161 545758736 237791896 40875941 503238668 152407446 432474611 943724875 542619697 73513474 460035069 498503833 704647127 407563948 45318841 941573858 881774732 987757188 100554717 886889039 52341456 367181450 986676564 406128729 171971224 603598931 543633341 370290258 147678156 65354891 433897705 248757725 810440392 324086125 533645408 169631602 611865311 508558669 133970909 220607708 770514131 421569295 366113230 667021242 736624479 966147756 757001173 344788993 356475821 595440564 135876425 436167800 268143584 716324295 807701430 633184058 385828748 932081947 192211288 795090488 709558329 405966585 161753508 955895733 614888419 372214848 861864384 593236168 68313469 799765473 694570758 40423389 381849449 25020769 477751173 630835508 528538625 481105242 595100288 580668257 594150930 702346746 103009005 692858826 405056348 509092226 315452406 779037996 710703891 132869832 392195452 439367191 860663393 253743541 125921935 685322605 562000609 600167368 358022647 7739111 635117350 878299794 842349742 422671248 123230002 113516088 368545892 730980936 453982975 478285300 786654714 821348418 605301498 31955092 466784263 23152518 604117122 455352570 763855702 201404784 75305070 887065754 781782886 581200175 16996228 890543615 624657129 815552583 560625411 614832966 271950405 379975951 871560474 517950113 916745238 458129204 708151662 799560917 265676202 616647732 465718680 548166588 238438787 641127908 854890917 517402820 915305945 768855275 548057236 137450863 49125654 548212036 531987163 662382033 972859480 706177216 98131171 968625429 207579122 268345730 587178887 606417912 670325739 245828737 44860569 298555212 292339837 909202953 789535070 431453303 628425367 833957946 288337165 281672689 588405340 141427592 758602067 262497226 349223842 113743161 757698257 916586017 592568436 21559274 750682525 206027182 761499537 647693835 218679741 981418041 487748330 961640542 429420975 727807776 69357095 298934908 504140516 830075349 352796451 398703440 738213952 220984926 610718316 304781209 981824156 473841108 393933764 350868588 245372228 352984804 365426338 621809585 31447162 922032209 437899954 656120481 305230321 985759600 566536273 587166798 515323730 265479338 702455570 433936923 14141114 885501437 532377147 849235008 120676666 856778108 860414792 901123143 77367126 222461898 34646631 135162770 423164295 804454051 877761275 466837459 972859065 28177748 945322010 893004689 367778509 557992766 810462479 127848106 76310296 506805335 829587416 949074635 66970851 389306280 228822952 64019962 209680361 343144400 252817255 85081869 441330396 620508543 940610605 916350512 451420127 585604604 594189770 720225123 440257805 347218848 382578498 335398138 921607921 451552857 289851721 671835675 355021580 486796840 54255307 462022979 983988819 129838499 459650919 826299586 133359534 356869748 415460334 830022970 620921978 668231127 586411241 713163812 724756232 321600800 510218001 574981707 794129692 298347059 287626197 652631118 709615726 159401482 440547799 151743266 259198252 692852019 737347439 752884366 703359095 466871887 215252263 53459886 85141217 796458133 176778301 825460081 279184629 191357004 143255332 18163483 419546031 970762068 473882627 205550788 255120640 825936286 62517556 43737558 697006668 185439663 941210054 411394962 222901483 727742242 802770428 780706188 559609515 448973091 763350476 809503275 179359820 815914740 958850401 983186730 180355587 862231659 128120730 162021402 152928760 748223090 351518344 783242462 385166535 894247814 128473076 424554541 901967363 205689401 370923990 334301715 869355183 16124849 402967263 135665264 271104451 890714150 770633456 932667767 708037805 460236647 938253217 583756337 122914253 752320342 313474747 528549624 737511159 8066151 845637822 169990652 621532149 629164582 579190620 996579265 540653827 925162414 384201724 898394527 504732497 507256882 588563512 44375105 90604933 957994359 884996703 725107751 216592950 841234520 228289524 358426148 704171122 211694913 262754861 195976672 7853113 265405621 17674356 746239574 637881087 857231305 647010538 628729943 953264174 339846310 515090143 646223622 917886369 514108682 817559899 558143579 352775723 346230472 676576153 591642528 99997710 580110915 827035014 91537398 381771652 179084535 535318598 916030673 542905146 99620337 559669424 105130104 657890512 565911122 384850381 421082758 285605210 487209423 359253853 340435052 808675298 359643444 950691409 780406764 357879267 503382236 720969042 482205087 619603408 715996475 915264825 649315697 375075723 689817429 559951253 910106912 869955310 57338692 173243176 768664256 267396678 557942965 140500074 631380793 22375634 305419115 243299333 104321735 352286536 972290491 973926743 313230714 601831505 113473807 769056499 803199412 782117640 570217571 4823328 733293741 562995584 447141067 715349592 775102194 204249915 298201067 984304587 441291490 810751923 980487293 883449306 559043888 374323924 8718543 271675036 768217956 202709888 113333570 217031772 123276890 832237066 914116812 656055320 609515713 202324155 86729079 467967492 331484572 807678033 164452576 660847109 698872517 798941819 126010041 225520183 182386021 277887582 985965895 907239272 921719934 760326931 200644068 24759706 870637921 927811110 119614334 510003333 779449400 191947289 720782102 376873490 3466877 673482463 645008963 738611937 942136193 802085985 918230444 573985988 577093862 507574012 899941265 238121794 341211429 922377729 414915139 248244245 828969994 674402356 823707816 102487980 71610163 21214286 231245496 885198762 186933396 428981116 794160130 26080101 791676149 432400349 281575464 969007207 573786226 165632775 738928478 258108145 238307578 150983298 633270511 920326259 163110098 647444555 258122168 107879445 569456911 210768211 489832107 66971954 82815007 251890686 243368782 872325079 119836737 373699237 712069689 469213001 469257736 649975828 8624540 433273468 940550364 335588364 177928630 913318044 193693560 601632194 174133599 46983560 126714989 489022046 507879039 241402962 700935838 409748350 759778964 104335808 474627522 824234416 371151153 313123534 176546022 543224571 492094073 41292586 301709544 124762967 39540136 340624823 674348285 893992240 578094987 651356427 858695979 953435111 245016834 120363504 968349392 351967825 919457157 210452966 900956441 492997942 371773852 825505696 57331596 470164947 943994214 684042627 216302719 395545176 675924243 286825002 162133406 978362987 25837418 109594340 389622889 119369636 900625988 724402228 162848947 853403663 243132175 75650128 472772388 38443693 591759691 200333219 485904824 490268147 902030096 934472012 701131839 267448393 112269191 274152861 604884699 672968332 764081005 976167068 196747396 899125388 493361043 339402373 721237383 900567951 106936160 181431877 415005187 735184076 247821133 634035713 561555051 730596849 685628264 95980429 383828487 46012830 331846098 35203318 432160626 831360488 437791041 555531513 552601373 831529175 962163583 784483721 490553803 442178279 355922408 742392909 949106963 520951691 548647920 404731679 524816866 826373541 187172251 957224078 603895542 97828880 569709571 244174429 442776419 701090839 930010582 350174210 532698898 774002170 432250838 972189480 398652221 314622832 90136919 100769325 53156085 380832800 663491780 949282468 486616476 186067495 700250650 548323285 355833707 858679445 731643242 106347832 87775725 983952879 801821020 933696766 454731906 636916911 509218727 182809224 701201629 223900095 130409882 48083693 223632263 584700674 95952534 291347321 721479770 275250124 115495570 141744168 700718342 178305380 411624598 763984943 86876047 753502089 491021632 166585972 646842061 490545898 26600258 48054289 659760362 106669485 831588833 95109845 988476904 410381289 884406648 633042370 762324505 879454763 20684787 906014608 613718181 269450229 890354517 858798889 894390791 202407482 281306162 269157419 886023824 336090596 97967669 582471017 64148195 664604751 446374556 198971754 273259639 160434123 500635831 597444841 523897369 707222045 936888428 773190483 486249575 710215934 457964726 831365964 169922645 950830235 41746465 974206762 258666412 921419795 503916880 189405560 409116550 481433084 736720248 332591477 495707348 652219615 538484450 617602451 752362200 266102711 973036396 54411256 489491883 322675318 103292169 875520768 658013880 920903809 975544893 84063161 254957887 63218479 212301985 99522661 470896851 71254093 652384101 952707836 535956444 679105693 915247561 94856615 141341206 941377106 580804003 904687430 69790992 937200533 932415452 117554667 871901359 716731652 761704691 401788253 963638184 266241581 485680504 589920662 667611657 239520792 580788882 68087109 589101488 425159098 997924474 785988173 935304402 855043715 90825982 893211716 5609590 904617169 45180415 136825589 227189496 837944954 153848819 156007134 659067014 729584967 301415523 162828211 633341350 528548211 932313710 842405081 438503342 169648688 4012869 735595500 168070475 855713826 294539437 35789113 221854971 426782690 135119232 80305221 57359251 670755452 970875436 324518980 963499705 313141233 265135410 909295266 544712042 134688694 868908456 98671486 142873206 624063795 361351096 935084074 27083007 726177862 144036639 417022893 152487678 461370301 749360046 617564481 902629310 904851935 681104845 618829013 572181087 224189668 692051187 427896203 546331732 561064312 497839151 200521787 572548069 509460284 414960290 892122607 508413614 936685893 799583235 817948261 87982110 186484891 352808217 66432144 352219129 804218043 64138821 839641879 395157207 447486998 856694773 691676373 3466403 596346512 664435506 310864727 615636252 969009154 110547987 239843169 215906903 137036472 100814407 514676585 936059707 592872435 980172176 213338139 628178947 123050599 236171842 218459347 334230208 761923263 247640008 116755494 666454485 875941909 440322336 933745241 7967865 398840442 3460954 221601768 145831736 65061236 62434332 247651329 851579506 943202938 845441569 637931782 296277723 957782394 112909749 942477583 47542777 434893140 90217275 838348390 367065770 733297757 967944103 586887177 453885851 524378845 9122053 348127275 9461201 526147473 328838896 411712179 655412516 933423145 664389915 95493563 178522303 526727115 293604812 513809938 143232930 330231182 334141020 983943099 347604256 858895616 888025528 988005484 425359713 518271649 202181347 215630864 235938273 395884134 725700978 749753669 898593263 565638199 869296142 108744159 772964655 919191153 20103926 945298275 245911065 593432164 655258746 3004813 878493304 190223573 101774721 336892106 331177451 489055358 351550980 245377214 788127335 572846218 427734928 940062912 402703027 989634329 926711752 372545625 191486698 605499842 176611553 88368585 127621885 373732364 373105189 149963394 799343919 376451571 348768881 224952747 992343191 241834602 791746742 736442526 195368865 202379219 833096827 480627050 327710349 171520648 759992409 168906577 556962287 217706838 731273342 372436299 426608941 748279293 917823275 790607490 824251652 124495793 589437750 377540308 834644484 957949852 696407177 686649173 966850831 75803994 104715937 651865802 78197726 740343675 439218959 827558958 62405500 566278148 705518075 398315825 810175177 320016110 678226588 916966068 576822520 116997286 612832705 387467086 447968273 9807499 919359563 430501322 359247728 962195316 892636080 652287399 726792260 667450919 820271226 959468950 772703761 438670819 790853318 480751616 767813422 501752535 310781638 294922110 250519368 280105640 845039935 830048607 970643933 364691183 202756108 20666917 533417666 627679673 552613529 340484616 775210654 59279877 264315496 563052401 792154476 270740042 204902288 409300352 805659901 959554798 842966329 909275271 883042676 443531472 385429537 886697101 168044488 345385919 992964890 979714509 387738693 920704256 236119433 192320308 313800971 367916492 460244457 306216166 490932878 431826895 423121990 467216569 665891860 424364971 965600451 9374904 575390778 698315635 129494548 359174049 506718064 835402032 45184516 14787432 572305016 348610399 756040689 19072946 468662507 286542705 828131147 987592283 710802356 622132298 37833752 515404272 537673618 645087427 549356403 583608374 933255578 93751337 765350409 365087905 413586867 164203707 991189658 366844637 119182105 961410607 207337598 288600393 170731739 307249197 122195485 687069047 647094877 565814483 774770550 792997038 912510935 257267503 479940761 201340520 262975187 604992968 968447533 352106196 85369523 39246102 29469163 742370133 518653736 900937733 645235488 683896065 370011836 467685495 895114031 748184866 173010762 897936831 408403469 32252857 57530496 998937382 333422787 382595062 460430436 87834729 623124976 732631233 822899148 953651769 446365253 285553461 395868388 939859642 802952967 580457759 301192620 292106756 485586064 194992515 315934840 17131685 354967245 762878232 657115758 141764126 821745089 273786567 516209163 92828001 189813249 970102831 887335839 118768474 159726903 427376676 871764428 201796451 247328416 524029740 217918475 503265741 494991757 756085761 652705575 190196830 131551206 507402769 57695679 128264398 647652514 59153921 389799112 252476233 848837712 497355814 699302921 574610160 322679185 535408906 204730014 568409175 935384475 728437741 780103542 114200585 817857720 124003137 259725269 567166719 993489605 921700653 322329554 677335853 510786483 828964364 379216090 732581366 432064010 61974251 871126059 781988530 157046113 784034318 295814490 907457327 600318183 838996331 630900430 670143533 555067357 338277677 11961410 444021217 620855834 968244786 632044871 385908339 663440518 462174862 453517759 304205952 817638815 132129286 662740068 22469016 926261239 839034006 818402623 384560321 189659827 298501868 209410097 250756850 23036430 774235882 817019245 283337113 578134484 873072168 382163964 809679638 169295847 444690031 959920184 820435261 247409342 495675455 638878289 906327000 725010401 765971786 735120075 406625571 359578734 461523703 898560254 753761870 595463063 585412832 835026325 788136959 868343074 194786644 251760399 952210125 531486696 235749333 363380801 444139974 286226006 114752411 122009299 271842538 347028719 511045136 890228158 376212397 856089287 60973394 652768724 584518521 241678345 398361269 824911416 319939114 475002483 372738366 273019105 620177552 992438229 69206056 960666396 13527792 84907158 575917923 292176391 513393540 805867567 8363536 897924375 168783606 547901357 30452998 440421523 814890729 528601139 397282641 390307862 401242224 808568694 103175341 946319633 999194773 327326783 13464079 4992326 783767252 379253485 848596509 608926030 304123805 275635184 29374897 73903381 909509845 282443855 795843674 898572888 896522837 299868195 809646810 471759150 928198250 283968794 758369705 934904444 996595283 341989109 623051632 990444671 112310983 774454794 889195407 974439751 278202988 783660994 686190745 499814710 787115617 332199196 793489107 659651972 296486581 922660136 720233144 665030846 574003949 932916109 918497143 276497731 908321410 680490757 639215475 185470918 76072800 756665307 691586754 902990287 930409577 853859956 427370927 62869050 308207088 22599619 529392441 72057782 273246783 78953938 995182481 918570310 478463505 138716736 782661792 619510468 585150232 33295038 351799935 505694553 895608 875029905 102893564 18813959 412264778 148323859 494539036 153795615 467741978 293560114 487551891 414069707 251634282 979403760 795150670 20324997 734997293 89337313 960885994 131636126 852449612 141515696 132865594 911206072 661268261 9535898 13078212 79736396 956046855 709956081 493382212 364339749 172185271 953985946 98806057 258803171 371500013 27176080 960215827 696589178 799169240 581191775 341154651 696390064 812715926 123867305 805794699 790023842 384406461 713956261 982705633 21868607 905750741 507763355 941077969 621356748 670915292 749569129 367256192 985083742 161650880 289915393 33065802 990399587 741579496 127649000 488144444 584653850 246097324 984314297 17169050 78442774 561471448 924679328 889647451 39560383 894671149 326037984 516004264 736827344 296272608 496392269 659716449 489365210 298199578 386556883 897606551 36848832 198328438 979111917 255058195 643143993 61741189 441336366 822038222 374487890 478848077 61110460 135442039 962987497 452060102 848787151 64582384 846383155 56314716 949918519 295310545 526224950 403447920 175163092 408415460 712073040 616186327 448861467 368312487 126614190 509588057 172145304 543184589 607439318 622174515 588520294 7758781 781866270 926575766 286422457 308367378 554224690 263445541 644429396 188494105 848279186 292158843 273361171 346763094 902112785 323325603 523923811 460403455 34603351 329002654 955940037 632635007 747180128 357275617 733387599 159672053 279692027 347004628 486795306 710275762 716442957 43087956 453829653 108193215 838779979 208258609 940656608 106009172 796988483 902782385 175623410 248940386 416414036 651162635 431720900 785551627 136183792 81059053 632993892 829925668 959619937 113999095 863415539 976028602 943074882 908580926 562629159 299869578 586578178 226234570 326467530 737063559 891418213 921386776 115603257 261237847 793456642 299168920 996307429 514994391 492220101 836904496 363790294 498545811 774142831 31227063 695468067 383083854 125436689 335341435 251220347 762336384 251595157 951710908 418842271 133376467 722098741 936038958 523441381 23614374 383802370 558601595 396906167 845359498 977814622 434884287 560828434 168704199 91856258 172279562 418394376 934667992 674331385 15510241 128259646 154206186 917253155 6385342 747412334 308497762 980182195 279568267 454874598 5715540 545934130 559648043 699641096 363112460 893403002 417527538 211355848 340710025 985056059 991697959 719088689 949665021 488857721 866826889 835487712 499784271 617988107 95284423 996561543 668299160 169306142 428785927 254913900 424903849 510377649 519764832 457134311 341365892 179332631 538170975 275853544 514700255 353067384 782970758 445227374 327332261 535461711 637240264 240480529 527964532 573220333 156583439 501023097 515941407 358586869 694964663 982223332 60946989 149445854 255853840 935531428 522215000 217643892 234201055 576785567 431005712 300419672 636058077 865002445 777026550 680918651 56370487 870293438 646741601 613267879 112931596 7068945 362067932 595190 845929971 857510142 540647334 383461209 13956722 613036493 898847792 143503378 888491912 843321693 495517091 558645562 610442020 368737182 979805783 726402108 601893035 474609943 620992349 150658648 554316150 507584353 316232951 772283681 29094737 343395753 417726234 444893951 545473790 213772082 703260659 837265838 586401968 96231377 705975903 510904509 556165264 69088879 552717937 518298640 76951868 817002379 455077872 898078303 225119299 728236981 225787094 77147061 591684266 697064980 191818706 434593777 921734506 711694049 575482055 186625864 916374511 476343274 259547979 700712641 618811546 407617808 216808745 65468088 766835520 337306313 932996319 583630683 552897962 272484511 337165857 533854512 352758803 926750126 438249044 176419725 848994221 581933354 801066771 427704095 273852188 798059223 380000942 295107684 725323001 25244559 55610534 96910384 311389776 112440768 380283443 616107564 867988258 308141547 729094334 208984402 868166372 981915942 381968999 829165683 883799807 717725083 528611456 658604209 689880910 746928903 387217935 779420165 385206946 774797628 70211152 830138810 650448193 139853471 371876657 108219120 714764643 319994538 423433685 327927578 465966004 818641003 746821906 619699328 522300373 93858564 67061746 879918270 416929499 937115689 889382454 718856003 503816654 674906277 496168654 119998419 501103148 222335701 136033890 935983878 273938019 442058539 898019276 572290246 176476250 981154476 779698844 17631957 470942185 494154611 144703891 540618565 258655580 346113324 100365608 491653886 714596340 532191129 980185094 61615675 301714534 244289809 461369740 964450573 701381978 67540220 967468108 631316951 242604525 398882392 773043340 838066640 953744943 333308471 261594312 991127940 811372966 726383167 332244014 457233747 343416266 159043368 930555680 613458417 560834182 822958402 82777526 14903012 518856894 204911852 8208953 322915594 201706691 494597918 939462569 686133008 882386144 2071008 565346360 949155323 199910865 87381200 173537229 292649379 839643463 311072673 10383490 469609779 614614117 772140694 365969191 691669931 616861766 121154315 270429116 327844446 398827125 338293741 698298363 58137460 169150834 328040508 229272011 560844905 558466868 377595280 303594446 675451020 504776098 279933586 917900244 944024449 68371225 920826238 937057638 61287872 59829481 761393831 110979644 94270739 427799512 801665779 769917127 369587484 811915933 275794523 529320616 778099149 5456486 336544877 565536567 476805614 937815379 573247178 343668221 956052890 288895736 526326696 998585658 767318722 942358751 382323792 761009760 938185128 83785988 16672673 720594069 287915366 407534167 526567564 5514549 107335269 754682685 667452054 307548238 482693350 939599376 617327705 209839907 807080317 497674138 870412290 416842922 861356432 428839838 586756565 835048462 794452956 6792015 295524005 871382829 753751793 968665047 992801372 332815642 901889969 177754834 459246713 306051228 832367061 548682448 454925965 580187822 839691368 859346390 144591549 611353853 869290057 361353693 592586307 765037677 357438126 481892178 985505773 317161877 807633308 321365909 556454044 995435838 622108272 832220026 632926151 952798439 805577817 571045323 646422517 410852164 490225371 934460867 53022022 872574139 182676045 988811156 229019115 396511717 302201948 20146402 953478314 344400915 824139910 975678791 663391579 469979079 226293408 228159693 43220333 733758774 931464529 708260471 425278562 871294157 923155604 256342200 91572814 320322473 375627322 69657081 477401180 27718173 839832166 714386200 34606921 784111664 940734479 775145956 147101159 603487772 974961025 447398818 389634972 611035856 456157404 751570827 73043680 69765231 846142099 364365131 470246850 612859599 607868399 358754180 588489828 657938427 79758730 486494281 681542523 753332402 1889748 877333411 373823184 532310757 970623890 511061008 345159105 708098621 22644313 349040383 578904000 803088018 17159447 328834901 4134611 997305973 153668235 955829738 608292883 601398695 755110344 595158541 327594541 31781280 735865526 763553276 527670756 510923273 668586641 596328301 101898380 807406402 833777768 356742152 565020305 380811485 837691807 986794475 613239278 856148513 924726382 622854181 107480758 643363464 531796575 587001147 504293775 966600257 162641108 26653605 328172082 506097326 358276990 482632274 473179629 154448103 393330919 280873760 711964705 601184310 841376490 145385829 997353667 194147993 287046453 911372905 155604703 797511492 28609486 497861609 908087569 193732892 254989707 847455382 751770634 498918204 136790680 13586068 225605393 21194100 490631925 964865019 298854527 782278341 96936182 963666778 217326146 842851814 40491457 666933807 447211099 535055810 477693907 400037232 780771168 20305400 564032380 433249797 918938362 81304410 763504478 919619915 109948008 186455662 22354162 288690066 286805243 164052976 347801346 57565344 835374232 182243150 311171632 193329709 93796409 356688171 875169646 516575845 214488172 169363932 125957252 838148713 373142482 855628782 563989646 536964302 114887073 352603294 443252859 132977180 710044195 281574495 444126095 78749008 100523829 248347480 934910945 935484506 61345993 937279459 600075486 885100704 314750308 605695248 562198980 13572985 342700192 597743903 824181800 698034355 749355435 971843594 295357041 695084302 772293575 72285177 741362266 814391487 698659016 271855051 360959860 578005998 119876505 403767188 463503777 136669496 417725111 23847705 923241370 836158509 124045492 910423638 607168875 606370259 984445110 282823672 664997618 420009249 951752949 317267940 649925219 965048197 873834816 700700078 116367558 250415455 150664057 566096163 605667960 406173316 934884372 277507263 224840102 366911163 13874332 411876919 249433301 246840899 346089007 406451441 38268765 351273035 440606205 623492743 641608169 396338553 49586124 252098888 859293944 705682532 718867063 628504759 246186335 146491930 776621674 155376138 532608197 813236891 48577576 52016300 624678438 937901915 666840262 107655867 805599313 713290692 664081005 792249739 104880234 669439410 496212187 485053985 100219496 125067253 488753122 202529208 678479256 972252370 605851112 583257664 40304920 871568515 431907942 697190106 31666781 690207154 896967786 620352605 829410734 581314050 670165268 496332244 782866086 260123270 100198940 138452734 880893622 40208968 369656907 497325261 810655648 452756676 354944509 637913063 446112765 553439338 292510630 435087144 762567608 652652319 480796233 349321758 924510865 379045564 699955202 490494860 594701468 169804174 223456382 176503271 731875519 75172052 354955646 259788764 149367607 45315909 380267864 142363336 591649811 549032839 168389494 613993278 1527224 692482745 486388436 53864837 604947803 540250346 126248070 948756504 475533706 400702367 802811440 491669028 192214692 767685713 92200588 697419277 959543644 975851757 392707048 843124713 581255482 326306386 752103589 196412931 286547738 721394390 673305017 649915738 126223274 543008450 506914094 387169823 248869360 769013457 990208161 861550139 488397763 505531573 193118147 70619078 108121165 628904338 464015580 136727441 297476239 367055489 308478275 898346397 341043165 19736335 857989607 998364066 512846430 771045307 255828937 500166537 939086221 422401147 524106879 27026418 736561851 771926327 77866163 718828719 406029194 626315341 63873698 90202951 551377523 365959436 10034334 965989748 898642241 496724537 353574285 950058405 906257812 731625101 782455143 620116349 595938656 482710324 618533819 946377298 446476651 632805455 907272747 493739951 273216466 247722355 217228011 420658642 497678980 851214376 599174982 240398383 76941253 909197932 275075609 274332139 218959021 934433581 361494614 708486753 318777767 615273170 510564739 964038561 486706418 591184307 888312376 759876844 137823011 279898268 753019557 382946105 90553249 472166223 312303881 71164339 638115112 728286462 379828284 568294457 133404231 395101397 71825446 267935197 686108130 667307118 314382405 74353510 45432752 714657370 3627052 378102734 737191102 414839967 282865662 801781956 511077866 650627893 84162295 732042026 147695209 305888904 433309667 563114904 858123841 823422457 779596709 916252887 887100111 600399453 397119410 796932712 671302467 391408252 899308179 209270523 936671008 247138195 803362919 730909432 587439805 290171859 572824414 386459385 156063686 365080288 24767551 514478670 811922875 225822290 941873379 360066935 54759535 207884343 763451575 926207662 403617930 54689167 928407358 498996315 585237000 881459919 691625101 788259229 78011064 605577823 130318286 183546568 971387582 736325916 835742141 930760161 877582610 120442582 325941038 674913572 709902847 297361619 954870149 706169215 423653796 563416650 172376380 59557652 552045174 515575017 518024801 497561019 95704508 950227280 316550933 175893373 197363218 34277780 727055886 972647194 78965223 504730557 272694037 384061572 509509119 345557064 501987721 176750434 371984881 624382117 743416027 840360846 840762537 904853946 974816016 945067415 183989992 396875358 585580354 630010688 251049407 355543007 106784799 540654591 159031064 39359613 738147432 175802239 822364205 357338604 703659892 963208734 389694991 215477718 106468266 772233584 389204000 637727319 659155722 37540026 614315673 889958527 139308965 541830520 627726085 234201300 747727392 788299735 436325572 435614157 468504630 252028731 878732681 365116504 37625139 7664827 286280157 189340756 131503225 74185120 592699289 300371736 581679615 627095530 354175088 505216491 777711309 366017739 78348899 945117833 952020865 203021097 458734666 19546532 843813581 627795488 737955922 417314657 455181302 84155262 668832378 81319895 772378455 690631750 711622421 657438612 870677212 275948334 465359179 29789207 712050823 910008096 390602135 968206423 766158575 807605180 912787018 964114234 801995708 704292821 292267527 498517023 86378540 384854512 159044677 89314133 899771794 907643592 724543952 371532449 731928529 361701324 888721737 192471996 490153957 761283999 122002337 100198099 97363034 275008664 465814690 339461893 634971091 814866752 179822950 156435689 572095877 240600790 384386781 420569861 412536249 53319118 339715660 569011800 860719181 905469517 910705097 373450449 889348916 893022895 769072320 71640021 592193777 42036226 716601969 900697277 328099104 77950600 543204975 450023253 293946094 71730233 402687266 381814367 993452956 474561342 391597638 741680654 997237503 482712695 684045162 343737483 689296899 722888182 439627378 577527412 270205219 249405826 124991510 634670936 474779379 755207445 683877473 815863868 75452567 98771295 729107762 874228761 63728713 854762048 355957438 188008539 190110166 298337618 341036556 725941604 551224609 888383580 899664247 100206343 958540959 702115808 316617008 884186381 892067802 77848462 654022074 136583603 942385647 842726607 807090284 277648938 751711759 550935867 108978163 966702358 316449281 814029091 734633165 960416528 737423007 450100744 201980878 811383076 73175636 167276833 130662559 542355283 235231653 106077146 728312890 675042578 794100133 96630863 113619824 436711882 533219967 238094293 763052899 379486550 837132783 498919282 80036364 825415304 403989961 79742048 405266614 453141412 551331441 193666190 105416833 844188898 930524514 581343519 786870496 926346992 366778792 773532392 140791835 779763055 19417701 661412086 747497934 388574577 672591 249448198 925810536 585479170 228414256 855995404 618523309 12629148 270785125 26858157 936721973 506956208 311295328 595174340 781527530 65268516 908650791 729296608 298534286 44276432 801188306 534197957 618823475 149256448 319511312 50762727 209277889 954376949 791316643 689703666 323648371 604666212 230022879 982282564 721308762 31710453 267406127 720869745 623933145 729035973 728169616 369687487 389920295 358811364 295368725 812488359 906837712 582574296 699033441 892461402 237691188 803375641 18690864 583540282 335176199 608019091 38854094 577073500 117584079 492386087 281022366 625608973 931314281 86883369 840555412 392028746 634012037 878985187 609359803 926896454 367899429 326053649 360074673 561091048 478591266 833141092 37682982 858481226 592255655 823307263 982009953 651392827 999021748 818025469 322937531 222333630 247087260 105107689 130108705 767374473 670145159 554529092 463488662 621638279 634652145 324606210 630322863 342671703 479316009 541345293 360262165 792137930 494685907 244538049 741045510 542981736 18383975 203948654 618682325 20368364 895245999 936694234 285332838 446045636 514075469 404156348 139703219 597528978 851081779 698789698 934301257 954538157 279310376 803695244 665861835 196243617 612592970 947394350 677601134 321453994 488867719 137668274 197884284 186740029 801916194 569940244 91471825 494178944 618486581 754537796 351989089 470559437 689283625 488446375 442673072 180316723 793716799 968150679 599913304 583215093 423442442 179802846 164101255 794764553 499072243 843532351 817024894 245277337 525848500 40554990 464381203 8226438 562063581 761017106 612973872 582115296 950816083 462420810 781086034 937040239 225146060 660077861 859350794 69762093 663724116 298612392 486781567 490537418 307524810 54221 499559659 932096295 251849571 22867198 374934298 955862747 120997415 256914334 373554670 246876593 702810223 338968704 796778205 249726248 734455150 357506670 279989873 637959154 10143396 753895587 250058439 765146229 460598892 724325713 933466641 212881229 804535920 225204765 847543060 873260488 192629807 836591262 349726634 914476136 214709118 125189345 735580994 910973797 261738756 504322536 208908635 582952233 620147388 19000358 562759692 418313426 914627703 314721796 334446207 513261747 151367255 811428960 228072306 116723411 511266134 956679433 567745461 890938732 747883965 808008004 55611566 654885229 362246573 823701066 800799448 617971961 732888473 496145863 766524479 188167142 575570634 707128925 630379269 703403071 239955418 116495903 508836833 353110210 892832569 526478102 866275995 567803235 605675948 500043200 76028561 331532743 79832264 490275724 590442294 902736330 946312571 587912543 719924877 707872762 275825796 34363922 212515762 887491097 628948726 655631089 838795601 203946398 485618873 536320573 992895533 352088629 390318857 292467115 932402587 417744955 917578485 401849572 933840388 841603395 711363041 271170051 533296999 468454035 591002116 717345818 948713428 576618919 892167915 44183981 686594546 671036589 80726004 31616308 963694970 600844552 794457300 210148766 47000505 721334734 411459090 685752521 440591890 702423626 535738761 478272011 682593914 456554618 270097642 833525932 747262458 262885777 210104376 310467177 886464305 528722039 202325578 588758515 332208847 231915588 879740748 244915566 1357339 141213384 169357118 310991603 777030510 51927303 338162292 540101902 830176438 920489397 331465236 805174080 231667700 722549694 190215323 301143166 3879358 717648577 929808984 717828016 671891902 192917391 908379632 346365491 90499377 458004145 939158232 838248024 783726952 856401120 722219998 554720226 408621642 917654411 409724321 868603020 903176912 351974228 118625044 386428545 462486408 285547155 623556095 929179874 478449940 766184401 856113022 942376004 261535912 623216719 34305152 382838575 636697231 983167101 150605897 932565664 421994661 629339779 177309936 783019655 261048542 61268155 29342178 53480522 973762495 349464628 67447901 723418433 826987744 968508721 458228214 262506295 975067504 280236456 834526484 125812975 328534704 632281540 157338994 94045853 518889079 763389540 709621921 887878249 27770284 804568473 418800771 41452272 726861008 535187756 891597265 417816514 583229042 20417301 310309527 835481573 131432376 424225797 192075443 285892176 70157020 295923677 635138137 520762481 387909549 975906869 809735825 128598696 284240394 431265494 293714871 293539018 609590379 467095104 720638459 782754975 551972952 735866917 696643039 621975651 737931503 96521708 118910140 248663881 413042018 104235823 659998525 793037299 959549303 976236605 563202529 19438843 348192774 444208281 382179709 310211438 754333055 170345337 37310904 341873484 928494689 689880647 363681166 972773385 794691524 939637028 581251022 110766351 214794704 202399072 639488412 228330042 581472324 28277763 872014063 754824794 902278896 183764040 637707028 414560693 896489019 764591644 607973673 400505986 442967453 640203939 658703011 722011502 949663782 462022324 877869513 782849051 425663222 582302040 863858230 93722013 153990083 318932047 198747995 844361979 650416982 459442314 791699706 807412660 716353550 104148146 82591148 871224887 274671195 645919648 758430556 364220009 559818564 281900259 816014282 728284707 524497634 950940989 65105162 932896690 290582242 83597606 214234626 845313622 70579975 934949704 582103279 673976515 987919270 878478081 801101792 412690338 13092393 76183268 13972282 787275281 135048589 62255416 94432818 119289375 6897891 645830775 96224086 145328977 794607058 377110993 932316933 655135008 474230035 759322535 399563762 860834169 532287220 851411472 841445285 273328443 680303062 596798295 936784121 885675708 125427887 718715514 289389215 771497541 732337545 758336429 614185882 669651089 437485057 939855061 386828738 56229202 965290953 508024846 350349889 178940332 495171878 58205222 57624088 557611192 940473714 109028127 797173403 627524099 424580507 843222192 555155953 889665036 388404387 411052741 893937045 250837705 909779486 929325051 830333144 491989027 350085303 672712741 199858524 389272693 867238059 798521546 278373786 199782673 662157900 933572516 49118045 391920827 171021439 877293858 865415237 765894700 607459134 703854823 386714182 109503120 663841303 83475017 927611942 733420552 496498860 798465746 423144962 151860265 55696689 440876227 444944329 889474172 795903217 510578572 429678015 490308348 430570186 269465173 84523260 427793563 932713900 211750521 271358955 27690941 241931549 376585221 558571723 954401466 701505976 857618494 889561649 581132384 422884777 621448216 710598020 234671728 142891827 225557183 289053056 140444701 807498026 612253714 415168692 942902928 38251385 420853539 104570884 86158694 208010142 738491576 341425447 738146608 846729001 241291213 468818218 647377906 623470145 668413968 670273259 407366052 998253598 649263204 107130270 265082036 363807632 449730910 882280268 256574082 214979447 256742859 86637391 723481571 328937288 507434280 592624856 143606175 15025551 623621161 501636969 50956019 881951847 466190131 434413403 437731344 320070147 807435489 748943962 725422234 514098473 182201474 155342819 898461225 735881650 652223129 120262093 565872843 477877004 24066908 898905277 339924864 802762936 883354934 568428208 857868989 132206796 942686534 444894069 814353642 95288945 494576094 232628528 754302692 344706662 198021892 555490009 403440251 161028475 294039284 682218683 407596789 753512215 169169563 863037173 856347018 586189235 340197406 40005116 674587622 523504477 941092177 812438295 145670825 425798198 235614273 19934946 175083498 692835060 132743083 639643084 113862576 404817761 787164034 529064089 597445752 955236058 974477677 927779552 855041970 302541008 959120198 463823245 614588484 945380170 793976220 251465057 425665797 211977058 750234674 187420013 257667395 590749636 78858366 997717915 299062590 406875954 290971179 811040549 246421162 123949314 64599959 711593756 119634225 247162782 672727125 281195746 758559471 682911491 756229037 38398128 101560052 698155843 502358807 837573137 511075270 961528579 333917892 870921829 455734748 80851965 744790037 205603167 267718180 233782655 743381537 452976007 317543038 409001707 787654196 816615609 177850942 570633781 142182474 735517861 773716654 624127080 502870424 997410637 273665417 123506721 429218564 310628233 644377474 68873234 762142120 281683334 644571835 469607297 597164883 288921923 648019278 89505478 288845063 754112786 430730696 331861456 730218876 399843869 474483624 289937569 525958044 119162079 710449637 994152397 245595397 123367847 249964389 482983679 668231818 272845593 211562375 593249653 614817970 144869548 593384090 449916543 991110200 481968940 422925411 140800516 610975881 98078009 483954332 324178684 67803209 589359559 417244527 215769079 395702222 847207069 766855679 692521876 903359395 337542870 249421535 952271627 861169415 832979298 804285080 406278308 127639660 924757894 880388648 890517566 164817912 359111000 720373118 457598921 323622407 989433924 335120895 238364108 979062183 800463242 92513540 635232736 994187034 760982717 545588314 403148594 2937944 911307333 469823680 115231493 290232714 605898206 500241004 527201070 655330704 509877015 83153287 848502934 961371260 801296340 197484204 418508732 131873301 39468237 569677165 389877552 997964373 217128973 63013070 891613721 536663531 166809971 798710216 11649200 630601402 946537780 587280327 457086659 974415960 689627735 499418925 632662579 759898256 267251511 927319501 376782710 469967328 475438085 323051376 921414677 44028412 160005956 590441555 7808815 74079817 311774283 261786535 289250293 946443875 822354887 261321232 837217836 81826455 120252982 520229927 251116718 826591850 47393900 934561016 894405097 56634128 381543442 371172997 75165790 264886773 811755554 495589441 981499683 660077368 54592364 53985685 991842 599302187 908371733 761970270 264120792 66089429 886605587 174337901 418111319 518660464 555283634 755839750 254500676 439926507 285054226 561190753 768697625 345577832 149507494 882136365 209937892 942989759 66690742 547728392 780959430 425733370 790837726 963477768 812269942 316318935 913179789 138640181 762531004 417593929 1905287 191426572 755707638 967535607 666066532 175379966 976972438 736851132 404940302 402379502 16835745 951812645 26114375 544483511 588995377 853030646 83168289 424427940 969829877 469149093 990423939 314006262 748651180 943463646 825355179 24898402 276462510 191086589 390788775 71852432 746932835 315263895 644905690 179582109 560573385 25589745 193299326 699364506 684372722 969451911 962443548 429583626 611301763 691085191 607214101 554726248 127707703 738338899 684765469 446319007 786105690 405263875 398536634 383633040 160661327 728543969 300088009 467545744 234885387 641157099 494325498 124321254 21885079 72347988 847946063 775282001 15220625 727295747 619625889 850250881 199513515 325642514 722755867 169833114 340368171 163741776 770752189 461087924 344081258 272311488 470125530 641527901 734442837 26142232 450310810 403825685 891582959 572183619 36256889 209445840 448864461 9020383 823799494 171146104 147669656 367261888 298403109 694571369 464914319 352418411 79629838 257844979 23361538 678102172 48402763 435201244 701324504 855686592 175891070 225049051 758686218 614050171 923391897 17903390 594200870 374401828 960734563 607894725 364230093 665768516 855855098 682308196 257518645 366074139 802114380 596919685 3151783 414412571 709454748 962930212 839482626 606125931 502530051 656359217 496155446 840027493 849656045 853356818 153799626 290608408 403423384 772489758 544999767 43767750 908534168 330417443 251131403 149708903 776956246 744370656 469569575 607800869 880252044 737915788 519257217 503471326 466173386 258947405 321939715 797980070 279037941 759084738 76981034 426135362 501882051 474403962 167320200 291414701 879371584 479740027 573619010 989061526 443625547 452699836 207024274 279690977 908519705 657256874 86531398 537765154 565691314 124509351 962995775 357499173 548892527 161638022 33870579 524065385 571027842 886758417 32993260 705488799 199133550 312426627 530168135 31485744 992906635 189376527 209064246 265080245 957918084 777627223 139321982 335930493 356448984 340114165 356321530 776268810 878520668 672528885 436305430 978423444 110729655 422144601 613839700 747319428 592187876 54276244 709085899 825726202 921209268 735294736 876617635 717287496 415716681 846859432 840905370 758303349 857132956 277809966 471744642 504575420 868493561 881112550 397660864 679597322 219147134 973227017 29273551 954596995 232294815 442004804 789705659 150443005 854195877 624790070 120781991 225940867 466305834 494700789 843458887 162096595 969296286 550256010 866195302 477918433 71764166 283285616 199902306 344796242 874276407 359147801 815504811 125148674 541383903 573666409 345050440 704100478 211595133 560811321 889245265 472006539 927095076 771140821 332747126 950219421 119628732 69713278 792550774 936620896 721064065 572502249 192007081 969696307 62893698 766034111 978607735 332841640 303356195 263287067 112043487 231311878 846655131 331099919 952631793 540985287 823637111 997333791 821173076 253804058 694077973 756096964 49426881 463032418 640463658 690791402 97239686 69487029 907538493 90413426 243682563 384865629 838760233 270280625 688674096 665787227 673804191 520765935 999806486 418288351 591686562 366231529 422037585 185488081 331616777 293765200 983164053 495494732 395468032 91066184 902583846 699531549 752383623 258879722 739288926 551692360 699373297 380101570 659971627 91540611 684320103 106035025 453653134 165465274 347768419 461032588 819599645 644358793 643501109 403532379 186615169 543244485 774297474 583688731 53518073 227509236 960887231 815148573 777475286 955411664 688169402 549698084 910351101 524619975 350019090 553548267 326875752 29190782 951509946 637157277 465585573 232856650 667710074 714062427 798275925 32698549 621586286 445765306 511896238 383579903 622914437 175950146 67111418 860819866 108147715 406375664 959377174 949745837 862967039 324094900 47589876 24478867 870425574 387921140 883495705 220117081 234548214 756452360 716519455 201835075 555215044 667197628 621278260 552906823 425286327 799315409 84732058 925347984 386546570 670979451 4350245 568313852 299208910 654050788 416978112 912912543 749658725 552869800 422181352 427834942 232258312 577382488 827676463 698349269 277211330 958006519 946988986 645777170 79263603 984534656 481093572 276784855 306022735 13038685 345318681 932887995 665506652 752285937 136752028 542485898 591660535 576313360 775981505 220783809 748204368 48426882 510620947 832766739 828326889 802257283 498923695 994686950 416710939 72238918 293191624 583336663 381042576 160065901 915353121 876437554 908662730 572094099 843636374 245675898 300959899 408675778 555652499 710664167 955206571 457010429 720572827 324187875 935911414 421098936 65424834 124080268 927501387 77813594 501559860 309803062 591132110 408296898 981282988 606820582 266410102 192241087 899091709 705544663 475172240 928585111 970689421 766097145 716462650 79060353 959966677 986389869 599833577 349349931 593805538 487158794 341312739 309955380 794482135 730845148 898385094 868670899 501509737 58267807 689632511 38368430 803707745 577043272 657525588 810944932 9701150 142914173 641832027 171220740 879908368 90418456 690030080 329093299 854707006 90766503 730788867 184170123 445939905 485947375 695486072 674283734 553784903 698031973 248828997 718877399 629707665 540552627 100757415 371224897 860369653 947619897 653620909 77540030 657656284 980938122 572397499 620871785 295470917 445666283 688003593 88802388 773924929 676427735 301617186 238741507 363869301 747670141 616099430 687216367 234935451 851280448 724346760 778515717 560653057 525514038 136575760 914726180 920762376 221812138 566114777 24993187 313069734 877073563 198549652 423635144 766251749 603028538 926384708 166180689 613689953 315722864 575966912 468545263 140778702 54905686 3130165 817773255 706228848 801693114 709754017 686647792 299157666 854206369 737236057 514704375 489912400 408324287 985729668 336912733 980761724 972104449 288424093 171123223 176690876 95746307 76304373 153218574 845817786 985541787 320410158 227146141 724356019 287190348 73412545 569954838 52498681 663636179 433007737 871034941 879969393 486019487 837973494 733067467 458302486 965413712 24396331 14479084 650119540 870038847 615406561 430149313 196444205 895660278 930038578 608198111 891091064 441949875 108668942 772886991 862209949 238433258 528167097 837229708 452243066 382947776 570567243 15244552 496558593 106083217 461617967 578262439 231817144 767717226 498182052 881190081 90314295 35003535 985887295 386274085 542940077 658726903 191670375 49299601 678743132 155624139 525847768 40359483 992654105 357251307 105579553 425354059 606139341 429345128 867711270 579133278 337129974 124256011 661371294 352213765 635212070 231386317 324302485 67093060 514389379 248341597 169385196 118725907 714994246 532570781 813342676 556261344 816629308 744643621 622062935 800964108 479192136 923135423 262742735 899344489 13610463 626035945 542638445 690876354 135322506 855454294 318756019 154112340 83071848 236361837 308565242 995558733 39220649 387312585 238295021 81593684 245154580 110965687 859388172 967602432 489623938 935790779 623700523 310859871 849230432 125116171 275227120 48809073 167575345 99844882 256068696 816709547 735690250 630308847 178375474 714391669 989447700 559073267 538426018 213736876 535228430 223940903 700252576 859659553 367798473 250473923 910567031 821620247 30128554 143413432 451325254 508808137 918215979 336264231 681186434 882484194 302533977 382664168 450751858 530537219 480992856 940396037 116082354 267504448 316627675 928970555 353328817 406466211 921266860 33664384 74068530 490519464 722082602 669649015 575273679 195337151 31987654 824982013 584393585 131371470 110235269 811819681 989049561 242430124 396845697 299040291 456615963 238200231 587165288 450102780 673666846 762737919 275425019 815611862 984107805 685770345 47270288 182387216 135482664 80268 453843601 775591995 684518564 936693895 363457531 71393695 334065607 567315561 599217632 761677751 933163549 571957176 511159013 579449520 635304198 883807979 262170821 522688495 624319541 34868976 244206284 162637960 824131122 386991527 404375132 956099527 408136921 124164196 582637419 176995755 915821529 116895345 449232643 889214310 577010999 693049738 328825794 70976478 254963144 756368991 762191960 457708591 131046330 717518613 185665035 573205543 106236171 447742405 372914485 688277705 671596560 341968636 390700997 823518411 340930544 81188410 166977466 359154967 274431271 114272371 705054636 834227022 838191108 744649361 871823171 483754560 58677035 375947759 217629117 784895605 334192147 140824287 112842860 304961703 287028616 436285734 832333110 404397126 664831530 59712123 327709972 305342451 324400365 782632715 427877011 981189125 938088344 650448888 454493782 807752967 168503110 191555029 689892241 536103480 974243047 592365868 777627792 519133193 323608000 946119416 904065838 303854755 858009063 430270251 446855518 945409630 150704840 286732585 262936486 63937611 540366243 785785419 706427295 335803564 342686731 351988318 44953207 325174646 412472936 526870561 735016302 237225174 51532918 514919370 49117788 913622953 904545220 638101890 16754730 811468290 354129974 351520740 88790868 98880936 301440132 100399746 407461486 953709717 616222904 783571552 166948508 13980024 471993012 822270071 534164504 914292276 897278122 146622515 467587759 662683743 329663394 802589686 94522948 34154436 291119095 636923283 426097996 927097057 562407898 54509779 677064017 40082282 768738766 275008500 91356016 894747332 346637610 132744228 714647770 248318090 173777562 304896522 147802966 837854988 283073183 387383358 105596349 487577547 128103434 889459660 382739069 599359487 982806661 333638838 826577943 229208849 732697866 569565295 634737570 929920289 885790313 71134304 583556933 527944065 842372551 988695654 287430848 547915063 291719450 494704978 619424228 348960639 886886318 847189352 972781334 171419207 919181986 840105697 245882833 719897266 86895980 798426729 680644897 362240918 562976337 861880225 373351976 379945469 420262638 377631646 753732252 89064872 26003122 815621480 180717383 92907399 569480033 295672444 112744582 563230274 362586514 518042955 502427851 721469619 45459250 952044985 790648603 508761706 58591744 211493278 684282257 536869416 336103438 720847176 181119449 719128164 992387654 645533175 134974902 663609289 708454115 204703328 347083132 937862070 463907316 705079083 251553430 133664444 989804508 848654197 323450369 786858788 628231125 35121999 714154703 567330663 342526056 783258684 29333670 251663028 864966646 709496247 454258750 156465517 180527923 413677995 159512039 226672554 15809445 305722105 6515712 680102836 272221737 742986230 641815425 127615627 784450415 117960426 836089970 231205985 835361401 947984530 450802802 269783837 237239072 272018078 737272625 832881881 926827151 551601204 914557686 93185637 597226950 949278827 3760409 703274433 801943576 906593489 233291402 275383974 433300397 446459878 66211913 589974270 429528065 723610526 199228395 285894504 342129763 855333859 969992220 194104757 497990263 875346193 802706199 814010222 762745525 444535929 912374064 527037003 615692007 671740126 523282763 74664637 791891119 678576890 413951329 302740581 95734270 857537530 633707266 476919963 146431902 76067326 238091726 547991784 961484202 735655067 402644475 531037580 781231633 777502552 562388178 195683321 795330326 390771764 831026482 206344533 894191570 481993246 751538188 932948220 56703153 568460668 415932133 710482172 39871473 47800997 409454679 12102296 504518694 575650919 180359312 10085574 171372217 968340609 110364625 9569457 514000996 42159146 87988976 901686327 681712567 625631369 585227734 198617707 872095127 46772538 754706434 945087508 502375865 471987919 22315781 624736813 395829035 998393165 461148932 850125923 971758796 705676459 693689145 669370778 856294351 157171542 80415858 732737128 49985596 47819440 737242513 790427545 873178991 509107084 178269706 342226089 672385687 938270900 820943976 152976461 218838840 175248740 566720200 434031338 875956650 745426892 276424540 548994844 808483223 414536081 256514793 241648689 745675905 874414156 812381513 913140396 597583930 48588297 36975594 46920386 207591785 505695178 938191950 563431648 962919436 486830082 356333193 545396771 43663345 662370075 446814662 180083934 346047291 117265392 132644034 608229656 511118051 951010899 230207567 286775051 264060725 844779400 574875603 305742246 718013007 469451464 324096966 228625164 720451237 256969152 47667256 751958291 224866176 527360783 54566216 676625350 613845370 27932875 511943598 593946084 726063363 540736765 827812658 905239390 78289631 854124064 302164786 468151261 529447590 869396902 172205344 159193401 430911299 865944179 69483266 632919555 524228470 770582880 465187825 205196796 611808338 843206073 458784410 523624604 94676927 515266496 93089216 596729740 627190009 104333096 438639800 313340716 790866191 63206810 739722731 762703630 54465381 512524083 451742039 741601401 666166322 964025604 68228879 816018663 805752067 172275601 679651254 772651655 451604278 316642643 698756872 828567739 555303040 147406134 568952914 738611867 599426408 933074203 258316533 981473137 828141001 185545303 125045991 672679227 840192852 592276018 544324913 378126125 495286284 210767466 352982642 496822316 613578440 423973805 910185818 530800979 40137652 864031778 346440496 775738994 799951056 806212577 444996173 158938762 985553519 382171510 88193183 182394962 988497850 448679010 276607527 782934197 379506987 804914586 308010875 642984786 898145554 836420102 60304453 917833467 649296403 498530051 828894657 234061878 314812838 306222818 764801347 583366079 277474454 641175399 343887023 53357316 128721283 92339786 620493567 292063400 849949536 313245113 896468673 248500480 734029813 892842708 902360214 425312921 140573278 994182704 638276021 207634608 864150410 559636053 39427685 21408184 186439869 628194880 838282374 239858136 505836558 457387490 358665737 975553386 741319402 487852190 333956979 259585406 201623695 213405647 848545887 722846292 207562386 837727552 292133881 322783206 799803737 612829618 636985731 127925852 705383074 347771737 103453907 821131413 230254075 920082015 342963411 96750245 322000199 90139488 505914368 698189905 925730623 645440493 491831532 349417877 117583342 274641673 157547709 575579422 460920116 463158703 458238891 976176337 601490245 919019850 786634117 531959874 121633063 839599162 590981677 67914046 887235383 638725718 823413783 224600641 664627621 199200613 501324495 771794176 776001779 198618532 367205744 123708129 587837050 183461443 746378029 462227838 618212 354163687 489921483 577037606 470977203 465885482 594725413 480625500 792448185 940869399 542479527 592178006 451122334 988102062 868156372 303716991 900684126 103533670 569663169 368854261 898188232 385618086 281859991 589979147 258393856 206441546 434537492 274322633 380518141 910111780 546295307 465024103 677954316 982840953 731741663 212863190 787565643 26791296 958601996 294798135 671340079 41833959 487013023 533448801 940610302 868704589 506649017 397554015 591738966 376252105 374839311 210306032 408138148 60035938 438022765 646973190 6955182 161722004 670628654 624216391 357885450 542517457 321303238 312227727 600488356 576349182 234859065 277626732 941638460 157463026 735698849 240733089 7911653 184904442 922721963 858246307 472309640 992622680 53567258 827910431 266151263 369287871 930967363 204387954 674868858 452460249 292224656 151463215 677405501 742650817 364886013 805495709 470720224 98441609 376322206 285458487 866228206 291666870 692285463 246511146 542726342 680990655 757066018 554937818 302451230 631167889 503313421 665461597 804564859 953558542 195977017 849127678 132622777 243671945 345682332 826080188 486179721 823637067 384969024 855783880 297400814 658990866 502222274 586786058 872265407 88880013 519584468 832789917 952309545 412686561 429370043 711622735 844231722 277012007 498672337 126344482 410925847 19974379 965149188 819546062 403560983 957305774 166214997 837612092 111509669 997887590 20461659 78390540 662993425 246896377 747675581 707704848 495913984 981268933 319893948 735491791 343634664 83951643 528064678 398079235 262005397 947327679 359606628 856578843 410532519 592415850 475487725 128649402 865493265 827536968 189799376 103085366 245793436 414000251 576848559 555465242 219285346 123594902 825331390 702854052 673604947 403552802 421651784 791160135 682288307 633267484 645574442 940039723 336269466 326103669 285691734 505481640 537674611 861898385 214938962 654203855 38114685 181832649 742244791 857860577 399603021 21970153 777583794 203060949 450325578 48002994 926023301 623222230 210313008 230610265 623385607 822692547 715235470 591045894 390761248 392000686 845970760 125256790 853713231 288299614 814945045 332153306 8038948 53072589 358063361 119906198 866444229 724956073 407612909 326382978 337229165 683705303 60019466 536952845 131832809 857398764 135485538 204840597 874120729 233330354 568431439 661960688 875139957 573923754 143274242 337852646 166672517 999594884 104960765 972058804 849895784 944568488 301733785 620084618 664959054 827009456 230060161 875749646 415439358 779882988 649104693 146505944 737851985 513263580 504739209 61446900 953481909 194943930 1415715 481113699 21478571 197758958 737155840 288188313 442955336 268546455 482036207 636686080 425053880 207774985 721563924 111730036 551747255 472222793 703948135 406606534 757551382 506211731 142349619 123045433 93555004 839405525 760054935 909719816 874792866 491710257 556711944 929450718 892672598 369515391 471192781 841024092 331778937 600606920 41354626 543014294 945613249 364918732 424356502 829386902 276272888 360599165 324241100 732184536 682879098 277493890 407812030 884101325 149355963 981590453 946109525 749121112 954320575 935976613 374580050 962962260 112116896 571389717 841027017 203178763 749885964 933019259 634621857 107084224 510247365 941228674 418512917 638252839 701938463 871683464 887537205 479764712 621686917 993524513 189709670 866733343 943762420 729656466 881345502 817260255 492001149 603862359 394045225 732606634 702441928 727867805 328123047 840899834 6233228 577434312 943631883 863807676 693377304 510173679 852761565 981128144 545151694 202932315 919799801 512996746 141726626 577849868 967752718 854449460 289662623 45002804 364757536 453916298 291055202 16375737 552902919 116505660 133838237 990285239 612083950 798405743 165734293 386834940 535790548 328429372 27196069 941645195 123833870 879592752 573901497 531979545 767995587 164738507 651834836 734277011 430787695 694818305 9070218 5983382 11059553 644483260 856158854 671567606 792576060 3837783 793926406 929145656 834667130 929045028 240077658 151348759 321290980 125388008 985201000 232374018 555521563 733793626 196539947 488206492 102736147 976004519 221981743 528999740 183943058 746021105 80561175 848959851 952867510 938924491 856751896 989087848 142673260 422070975 290846587 9581735 4926714 603771592 467166494 647839821 810774390 846529496 354622964 26643382 426168396 935970131 870945921 223497200 519145147 385248914 793517662 267601213 671185497 384777058 823506107 981434261 83061643 424585858 418781400 197012769 855156750 178229800 546044043 272475841 378648433 937043581 518875837 51195527 793219480 873438748 723471341 621665850 41156411 446843543 311718059 587450324 781316708 418941170 367567390 458308613 193599221 901168166 734119551 12094125 886767392 518528416 147087260 187271013 319157229 58608575 499013974 469243383 538866615 728345177 606422051 635396322 789392047 563064630 65489292 425676247 787087704 605736084 191489712 177747006 888420617 841919906 103292608 298182578 949058670 544102149 795521409 146642049 392849927 214884693 275805133 735551533 969189544 294680481 549376530 876139501 984181240 289333223 787588305 43817261 460520178 832723357 848955680 468804105 370603110 929731115 333366057 119598038 423446393 612053870 77109929 668424090 387969569 998989879 524261745 528117903 177602474 200224458 160233449 893616292 319014707 364820832 752360840 738188540 120350258 734764197 432000861 843365484 795228908 842874426 381398153 185117185 486289150 7734068 911916739 836116344 54030295 208492699 822106834 529037765 60774715 323221484 597668119 419106189 850266561 183844248 840420352 827832747 921556822 294112643 800000662 47074222 668770233 866132357 909236464 735452249 160018684 239518700 607234237 49205283 556852745 95973880 381581759 306486197 529247515 517013086 384270922 372175470 21615681 695044550 121154505 114374882 693877214 25308493 418550074 955406679 104869163 156441348 478931885 30904902 231665844 664391791 579526856 892266208 130243799 93784326 816765766 389438855 626694728 707334839 359932275 136296016 302801552 842095202 105408434 637898120 549995145 991922780 136152311 693199916 846413540 999730413 413702478 927942767 617430691 979708626 675827794 961538104 447370143 295099835 155996086 211279265 535027459 545446606 557406656 643450745 893461455 690346786 851789769 982522307 342493014 944034373 388075198 461106229 508555712 791790263 265913762 414272698 243619465 826954349 581554186 875137520 957983488 55063887 719393439 763247019 561354953 33742265 738573728 402006896 884937307 811688702 77438301 809071355 919387011 804795872 44980413 443645626 768806368 578788122 775683513 532680783 314551652 697847766 135568862 84716305 12526809 194188855 592345295 877896332 34293850 328364497 329996993 540029180 341611477 846358060 909215486 77619158 378460560 126704964 37452387 765318720 47103137 425084428 491505633 872356244 659058549 109051622 109012223 71805409 110544970 335006764 30528598 63085162 449040308 836603563 616183316 934430245 264744220 92105763 335510138 37089852 293428028 50831816 298857054 508206224 569536676 49851588 877404586 882618929 335587897 889925810 675785179 960614887 296624560 18058789 793940098 64861356 527838231 300492575 585355719 291766832 321249869 855949210 652333793 557138260 593893253 25361411 807224991 210646703 302281671 339420089 143405026 188654860 948301935 355539859 439462432 275137514 690585772 846804055 250829283 194864123 640967682 163360068 798368584 550833573 915657929 198650505 946094721 466057604 996819627 287637963 396624979 919783654 931094314 272368291 107434137 507967565 896978968 47319326 904009919 752440817 602054172 430166587 471047751 640390204 1208628 107190896 154933064 704297036 630795054 982231590 802520810 817359988 690170925 739365432 362826219 395049147 10523434 188755576 55462173 494499163 131216497 992173611 490545125 329240387 575605280 846518408 71031486 738784406 983513259 996066108 577968564 924409642 972778843 710847208 871310570 695437066 357740234 507474337 746372372 502504692 807659368 265340272 654588925 536031964 74331129 915445968 634069251 41920615 988947477 554823987 318335382 848000881 952984231 489303933 608358844 256358536 786015855 74439815 352465552 236799854 730319488 927607197 840635583 463115674 12769474 575286017 775034121 673662648 959966321 970443366 605649094 448501541 302064284 471606133 702296158 99618932 704970919 12970059 279235536 45431275 720011465 410999289 765142316 496887046 613027983 324960515 537726233 866225139 327375703 239865826 734625616 689160725 762309846 42072962 227326750 798098562 820521875 506728388 61765094 825208965 646352233 597751293 925811101 613993500 401738761 658201462 272228173 337259130 627292021 539430890 812442002 765389958 450079367 650877962 208244512 168914267 294050664 990904316 100783419 128851654 602938905 180869592 3775549 891737035 561495789 474943530 136584211 848610593 133440269 412782195 269517504 758929329 658851571 23283112 160214745 996266779 207353583 37455025 210730504 277582384 146508197 932222699 576131978 951911801 403557005 354619047 127358128 977643951 842534514 432347561 33128290 139499585 747015156 268899753 334598295 979546577 500064262 630006485 922856158 9878199 118256752 776589901 655409880 854874492 368144462 103525030 777240507 934163809 387475599 846061672 168164817 537162454 114465399 871263376 329545463 675193347 94709277 996602639 272677150 297848642 135881454 657736008 380438222 839414690 816349736 199528086 769869214 136534886 657433440 100742852 951518909 848915076 579666684 522958483 256302444 886774055 210377402 632034872 508808066 942275118 564126759 849147355 690358247 424546218 600720169 67959832 954681113 257681252 341497462 581673090 949815722 533083476 885845018 376531995 233737919 871860267 65856501 267958750 104437907 290292170 909681211 301264694 641848562 7317961 936642546 518725764 63913406 205832689 453071735 719781276 141243246 634890434 262670585 839196232 580300170 942741486 581693693 521478340 16146736 536472284 463804632 683472448 553022354 556926246 274411832 402901346 885276790 437531419 970672796 414073025 431178933 306326590 941533143 234945387 465690812 40797637 844147345 534406495 74912014 382793498 236417478 964868628 957838015 95898206 846635589 630015217 608145914 873664225 799150898 38968786 751544445 310101419 896864388 715363722 210479640 9612279 997973896 720750171 603579698 50553266 687786844 897459839 974378308 189250048 219186549 704747683 957293915 122523576 21211673 729495655 851999386 337507299 914053350 142906591 600513718 483668545 438981961 536079125 452303992 21366723 284548360 567150212 805165119 33601810 204479161 343565726 816455803 265057031 268086344 980802632 885727795 754252593 751492981 178541657 361186176 390643282 814897747 225571870 465831952 77587170 482163659 253757145 483004324 309101963 925035543 626513213 467191954 203895211 351343431 830787572 517006403 85870549 949659583 851734041 70136758 448174672 707511991 83788734 173148155 312287638 679670458 734962792 200776889 516798679 541044263 462556558 444459178 721299571 237594547 351188253 160099865 810961028 148685541 973267447 378185579 956931922 73746585 770173039 597558675 147208668 524432254 431905486 625123995 186298966 203426456 283629010 231705634 936092837 801728958 853568298 602225113 677276389 558572061 420898299 77232133 282168804 876072627 26900830 88832512 683190692 478002901 336807135 637318840 437478364 728217769 40071936 958461231 601613944 907445677 96531380 516651769 454965269 104011566 678888164 977948353 915198086 754086098 778903789 663611588 182003026 192175887 969309472 175541588 844598835 563417009 223994433 468033366 915053464 699374680 743403785 29713605 327483684 450901239 323799716 805820717 609757229 414000215 415145780 502418992 693246525 835890322 244073548 520146437 97016725 64182168 943893877 358107636 980667301 770767789 305923756 691464923 971033493 490037737 28851938 233290156 938526912 228101815 332804219 626528236 813136691 726558806 401770448 943777334 80925235 752811355 413839789 440513718 192925364 953889581 807445459 480832431 539951586 293753480 244416375 62688245 958692764 600473083 603153857 306875252 381803764 909790825 994003534 729862055 81798832 47494028 47713199 339331105 671356876 329553005 251738088 670908680 906228214 109249006 572012786 407994773 558669329 350399296 684299577 380116117 312640178 855982189 186325534 697132267 945418918 951242447 250335350 973269515 212475242 337037719 419294985 575357569 565452209 462085703 920247060 5535848 733188066 514795320 232580807 413379060 382734488 215084565 434947016 457171432 548448032 655084638 942955439 314803744 832359422 583425510 876426888 122404873 44876648 242298198 911003476 807816996 226389961 20233896 622642823 84302727 715011136 294615980 767006860 450039387 501614367 970045574 419776572 944249439 102568044 244583982 696946027 252166755 163952227 719421679 45228892 547594702 317907441 920571624 883674439 551233305 545454907 632606350 135355610 246507602 273533973 479532840 377656501 148374938 406998156 65371474 233086701 851037095 409531741 932924282 414885769 518520899 710037627 288469094 311257864 503463115 843367821 809187757 394883290 312437425 712267373 741836345 77811170 487738874 377704874 856210635 677448955 479464384 742628103 448136311 203864431 993088177 745987066 931818275 509243777 397412750 294998574 555460109 186352357 615755693 687601665 313549890 877631299 496125816 880369926 801890600 957351095 300412140 597256837 650199797 56335956 885307931 859239414 550022965 308783260 426616234 687178634 64154440 584262666 546045267 80606882 91907297 947254152 927379045 885504085 432074888 508044537 413121599 305825775 314206233 893384112 912642776 340802412 383081283 601043191 626762042 169614849 836842506 136522890 843851266 307759252 435484998 836472601 269744610 776367679 85480226 609292489 327414304 92036305 578016157 107894196 16749332 596700492 766065932 677267556 202692270 656384616 125770390 279202908 168272109 425231631 137002167 377296527 126983273 158702815 245075390 705588711 208537290 871994539 942450254 51663807 36933966 231369466 198659553 185582698 773082439 617907847 82379584 653236138 452985499 140605119 796939532 205148985 891301954 310125638 605968441 742356804 800448716 870795634 355349133 304389354 285688025 92089038 821056806 738066625 144705438 58905497 848115441 45757266 274524006 966182981 547953972 976842136 850654735 932098296 906711556 778337157 968853897 685839374 463944400 582776958 912207963 239351445 144283860 726793690 293562910 99605199 108259239 675634022 822308863 790574772 655240622 440146915 907851073 636485229 293167782 437975943 380975545 417163482 433747486 698443384 555553872 779143693 574422010 472904020 704717701 577011661 68291826 269204908 476768744 308903444 181414160 154720389 219903136 493232017 205664310 282112725 329901030 785556007 708692630 470589452 835643272 363269996 536253752 985597576 438469991 678032171 838415991 740076575 901564409 165794274 953671812 563415194 552972488 855443781 81728482 113174068 866480880 240807097 187742696 15618079 235605925 916573146 344076098 301476095 567811243 927490805 434951280 425545581 450756828 573521295 805283910 63792245 936086182 848043740 260045931 837514264 542246538 207234120 969121754 405204939 449935774 843892210 302546275 965289206 563192332 315580204 104437803 753282422 717345681 476737789 742784039 339857436 614311935 633668255 329095845 693525804 130211771 522055169 466154692 519737055 409052223 959501893 890801656 186367457 206597785 343667267 514444423 496268755 535124971 301359877 373635086 790291402 963615209 556543561 496562684 494739150 145449822 403213058 484676629 677474908 936567975 840841175 217932528 236267237 913582646 604103587 926612090 598364749 794672400 623746035 869131377 483489388 530755920 329157003 812140266 886479761 162350754 712404705 400923340 667120378 629317320 503790240 664168531 484502876 791691801 44620839 409706381 514954593 250912253 750988296 197917920 109180453 568196466 722566281 3240834 153166265 747828106 605085734 699345408 828934049 682802667 995737101 266537144 819618645 183393613 318389920 541567582 964719811 272169984 968808439 712529019 315871947 620026467 965018715 681425897 173456322 421801326 188743372 902624601 269197296 620525865 802128765 930668493 121099794 383246642 515289170 66472222 300541400 101424956 552236905 463330423 463363176 455874442 189094798 805111000 912171225 852568440 247742661 311342484 122673849 695373811 709184708 980102867 199362184 654128635 524019062 732334609 474812475 371915560 499681145 449813149 530977722 458868259 5460641 481568283 11092834 692342056 150466675 583985922 181293187 870081163 906809003 316406047 292339682 740059439 602781622 992722960 474889785 389931792 882502968 385581514 613443251 2664891 439517832 299471124 692431728 701763281 681427247 204704778 262262791 436463752 676542317 702651034 731193343 662671401 277674676 888342282 858554196 319530131 163597867 655088240 149594873 63818935 332056876 719426360 194176336 967757338 451155910 783693731 448908467 104766806 651965755 954136130 589665263 432109720 275802243 118851711 422969540 856204324 452219080 464805140 566513254 219889869 12824040 191015057 284718079 518774909 922967287 689700826 117827371 957543603 59052730 309844647 337140346 416123136 876281388 505168899 977183217 702798217 532020476 630975694 594936713 476251528 949766670 509456955 444002223 81853387 940848118 940401746 828012482 478850355 460015488 897150575 764591257 91706679 34434091 832974785 472281338 788931167 190817960 922130380 546988068 492935881 699620704 678685416 25608774 413080230 687061228 983646399 424503557 991871166 875054234 607623891 221629434 71198440 273309423 981211381 142099250 223957651 650507808 878047183 504368556 510527297 877744791 381468508 445565407 80410374 305262964 890704234 25873457 406252301 865399049 161254431 419812737 261307411 163364189 152973425 203517342 168874218 410316459 952521388 52132813 863570680 815372256 68493553 198380359 950806197 369218336 427697073 13809080 888486448 800451137 438864437 625517506 6074763 178159950 813348122 314541944 223537019 741618437 294282445 316136163 685657545 717911898 803934739 580204160 71448531 81333746 516952196 179426240 56910603 290504873 590916363 468303751 6424951 225866764 410466408 597213870 228041776 887385056 125270446 220829826 982411747 431782297 65846981 401306946 89810259 619246307 976209129 838732452 220836820 635324445 82985769 904629328 471055826 986923737 110251241 19036260 286721864 854778974 127895648 317154286 437075530 158113830 430045467 741022069 872052603 182208096 325589112 642313585 420165271 511358063 335075372 12222158 572706539 78102377 464032446 99850606 526266840 394260120 431346185 171032228 790355795 340563453 290403262 598047673 220150888 264870088 864923615 782736490 929039283 469206497 926932805 620364136 523081189 390657635 188278812 518836439 317926981 983684123 21072994 230790863 115184940 627452429 937217131 847371742 41401992 771352815 598523744 402670468 600342106 713096109 905404347 336314550 451771192 846239715 464675788 912502876 230570699 848230502 113779767 717062100 389961810 829701564 449872500 632584044 71448350 290652830 5109070 641508075 126623508 858871421 786981733 927402505 425304366 550655483 557848492 482181362 772720634 608973678 855810027 206055623 362323481 351847264 879430974 460520476 850840769 842141969 967576724 82551163 931655228 925023475 61398832 673662432 144193127 991076653 703348012 310735164 436871476 960137242 936946673 197516019 577787688 586953415 251495105 850195549 727805405 308215672 847505198 937152328 758869122 369263651 86976927 986748532 684006486 228590835 767862226 206731286 724113712 241598662 71747924 924996694 809593338 849666992 7030795 615099857 61158193 983092598 460064941 16150551 135559015 64609812 931383110 863860270 47216578 722529848 733463478 940610317 843110010 785714116 724796465 77107746 396244318 618764879 847974333 242946509 293105744 573627813 856769207 323326434 678634436 428128835 903941966 3687467 213829957 414826460 522143751 156162276 179367921 520581590 700779575 608641853 933737208 158285262 398301324 43401180 88927264 377222160 983052165 484248920 892267588 315721247 833103349 935112383 127377360 312559923 38786436 365569553 224375623 20775606 502426414 90600130 350698430 863337670 416615874 287223356 88158046 221791415 226056292 313045595 376229861 468310926 348231947 110918639 407977766 151560326 67534595 320379709 779941252 309802895 398728557 405079166 273440379 938347466 909911482 692604511 927109400 207168014 43664436 778269312 270111867 186166631 835461750 545332213 965903964 586977169 717137902 938950600 595750276 87003521 84608098 575854964 438886479 386299869 565406312 778554220 313605937 527195519 881170412 861979026 526967597 17831413 992964782 927527360 149108319 935672836 603866817 992771651 652580980 604559905 739691790 209105498 349312813 145505526 338745295 785193147 547615968 236413411 618771732 125919247 671888119 602846587 509379393 87434610 513486446 120325635 188471694 104561396 813909593 292274678 956650630 734645786 665484380 201697411 205184648 699231837 564766001 521945101 48078409 836329385 291680038 766560426 502336848 121622240 899435164 288253093 202345081 264111189 178150537 101357821 505590899 277688914 968061687 234144227 226714178 30418322 375474051 961275712 915969469 993912263 479152094 859636525 852989457 714210837 862381648 742664824 96156220 198838677 183780400 512689446 593708435 803899859 977393773 88510699 259207228 609597777 225973256 888274356 225002933 422389762 211138711 657953821 737619787 25447375 124794564 718662651 528189092 751832342 294951116 365814996 291018294 38980389 936390913 980252258 284095437 564552899 264307273 6628117 876515593 444789928 406706844 730483341 991904221 137684993 665904009 627262499 181053202 154720493 983086770 484692321 470082754 181525762 77456459 313477765 935470301 296010184 585582495 28928259 518069671 388760892 595908491 356478464 840793656 52292687 127306497 263412439 35795194 290923365 86204295 436191640 441315887 236187863 762358709 834353540 578123881 333240177 905679803 596921235 998856976 339963124 323728856 667669230 347534560 34100373 148394212 365554037 681956456 90652028 525042887 57153593 519547531 899558215 407996159 1597955 608884483 274187908 413275423 85891020 173573849 58252602 129051978 125292355 413170414 512388961 611032764 134110026 948486774 206084453 461345857 485268601 696342392 18830503 655659196 971754394 123999567 608506364 437032866 522684971 626242860 974996012 972883836 767468255 961839249 969418356 133870185 800331805 484298711 49286405 659355289 310696063 389246121 761149314 977919699 776155477 157663367 339571078 50198256 310670112 354713412 404527388 427450461 345535511 757155209 933217605 525224605 794839205 224426320 794990198 160420805 942412777 234280041 846413591 821887743 241202228 146780920 139496965 562207495 728425359 859462133 238118672 363458737 950974514 128862634 766237566 820700513 644199694 204926009 114559110 68457873 61067332 840249364 850193366 661920591 492215212 496128131 115866126 930167996 849807183 713556002 454097219 380078734 66398701 378333535 520317309 696695950 143666040 856022784 199987000 645083163 117659031 43576987 966516711 879537318 410913828 185527581 111873644 310527540 44257199 266553668 801170338 466299871 372558840 355300901 885972180 790756949 727446136 577327526 971008578 227509847 483010265 656284421 997968291 166780732 70156666 199504719 76951198 417046891 348824556 256822762 488565584 535669988 861008759 460847372 634708681 283420600 332528534 175611969 436377486 544794764 395513974 1857257 55093273 439706395 323402620 732671671 927157588 600818865 678592956 865344051 260734242 581037232 7808130 289116985 899333847 564646159 307648973 939506552 821597626 206717142 82490063 135326964 576930698 415323811 948306030 599545477 677254390 674946856 616909766 27017302 757140004 823019434 618656933 83600998 308983595 336099460 821257230 407795978 483755672 918877090 292483255 308215657 4257773 439537927 910958986 351910911 442135581 754414407 24354856 348817178 98672658 671378957 746447201 206403424 241142056 71509654 690980285 943889480 283197871 648799797 681696246 456895132 768249708 4295885 499882364 500848893 843116056 958045018 379858160 344867423 446747104 361124456 683976361 43015304 346174435 229548698 7796018 433174166 95840439 775290149 24530890 715513206 480622821 757763154 760653538 117345389 933024617 765557247 891955363 519069587 859529267 812659743 742027109 727764563 976325800 296790325 33816121 438808045 180510753 458397917 961971553 771935220 440626794 81180228 580491986 340532433 150217285 917942443 202401465 466613822 96737253 947034087 512315379 845282251 111083891 866196708 508487827 158113628 569133965 774435869 726603872 628193704 757362626 981767718 232819028 161383100 701671191 749874723 631753758 497322103 652003461 684676174 245970081 11516684 334724472 458729588 570100339 594256258 331804753 915290745 568355167 22208055 616155365 521011919 84701155 117369689 270704381 195730179 573952947 254495596 242900180 674600497 841847348 486185415 605236636 217102218 799889665 114516246 429238777 157213397 99704426 129904089 262308484 310427372 158756336 871018212 550555209 699291194 476141771 274714077 102603593 798738244 174298724 822336450 936833785 233333533 617829083 34943840 504283841 475229680 626052994 43224028 969291391 527928185 286818655 858819886 729780993 286290828 332638638 828445857 765482638 341295245 117497437 77363029 428932958 191653367 977532559 774340285 768072221 247471318 115417370 480656674 413036652 538952268 39041800 522751517 401487712 145427983 958968346 288574241 446299649 344655593 72086848 730456047 61320141 235473207 878309666 734279455 469435186 375187307 149215898 693681822 303943703 519925387 590740280 372670506 34134100 225803951 612945853 339699160 7959093 765164422 952712864 306474639 211021563 194377426 737474188 259454091 775072091 917278439 664573152 414163418 188785661 830970160 721485869 507048162 654167550 169620138 950058172 148083929 375462766 910027880 714653446 370336844 267551699 815815693 320338490 128300441 153289380 407209045 674706618 293705076 942880207 426696588 233790622 433166694 105017908 392482325 549717039 778859081 511529000 133377764 605784685 440334541 801347571 523320836 83269002 656813559 952415826 851426067 413571437 910998429 44808437 518786497 16447024 332742379 467601666 902980693 339390627 597447904 22500753 265462824 76814534 658700498 900826157 66351143 670658642 27832038 778534233 509394773 688601905 179603097 327552777 270452039 6593026 891038522 449263397 930837158 881643670 286346349 934660618 643644849 208545910 792195753 746240776 817179832 977176410 129022395 143113445 607325346 478154163 865852737 176411224 362553704 811222306 105523504 789512335 877552279 68980991 187908175 701995946 576276946 613628115 47848121 788405565 648614734 334649566 198845535 863790802 151345237 432407698 229308804 304269925 802870723 435993365 232101183 584327910 406173836 460691907 406571004 418745530 17333300 625625258 171834363 80171579 439293781 793801997 552417744 610712115 732728349 297769954 470380769 652693605 388164301 901716052 889946092 537007108 688919611 135458881 466811774 74303034 859769425 537870524 390291068 149694627 12275340 151829644 201967774 349751247 968019069 729036460 206890223 478904771 394685003 344212681 890070095 464314488 703959856 123389383 836863985 35461211 504681464 593209404 987714525 676429004 745978245 332474612 111974255 5392543 199265101 601110379 306899414 594173086 346242010 240181846 514418326 626486276 644365641 933279770 821204998 622409987 483409356 648083283 110065619 271806783 944789544 736315215 230950268 670172753 537912375 626757777 670328531 96753734 68269928 992639310 380267138 882848798 200488762 914722803 672051844 442225741 928420804 60682141 467163303 979065660 15492656 834363551 802076945 270806985 237368636 81913088 210928824 793185219 937033656 256543482 334671848 202723951 887689994 679675260 208406209 944083206 379308973 533753001 103999415 625547572 456971693 192162391 523862032 92541339 43661612 730129553 985447529 971057742 590103265 169652246 245042482 605768534 674736276 542691543 266949933 696510257 429883299 336778877 202287603 691588941 160820609 770027232 678278255 827501714 833592881 38631569 969870177 129605589 209071311 861979985 579050972 513813094 63130631 973097112 150882760 990602371 503356572 800335375 86996577 936908258 102453219 758534678 364325046 946061355 526593605 627762751 446259243 524811644 901557697 655944657 120103159 737689315 438568039 44610118 736352423 26668263 693486302 773830605 865025689 50598400 13989087 146164680 817508482 550059802 925568439 682657615 572908777 855691287 79349961 876365228 440692137 719264842 208071178 843927773 433628787 466670332 873956995 360337942 94438729 486297066 831398099 321002556 595750660 824056773 504955818 612526698 638795728 319630513 740120143 689186928 200008619 478823110 448656155 63581007 507636457 547704978 414324220 901147070 978222771 737697686 397876467 124374696 672455043 554119876 292885142 325900716 923401129 512653576 187338895 415325596 578827209 399414204 429887003 602003198 155867483 482752305 974206091 909515406 827149098 427141933 243238854 406914490 69936086 617055080 33114310 733765412 679296594 939859982 348941334 872929572 7715942 56636480 297873499 686372932 69694765 131836563 670548680 364805570 819331992 171204495 653969320 406964753 606480106 753342513 553060568 367543640 615510843 298462313 74873929 670869489 642891765 416173469 280783491 578779372 469833306 90788644 273675549 517787785 135038971 853471948 947429190 412238530 498612034 21054805 195623487 475041727 919076842 729216244 441978847 523993183 113973121 601253841 580781838 885287606 300794349 851290761 357256266 195917961 236332004 724167340 978472485 503457236 449322354 472995648 623902660 50657092 337776759 432854332 182646625 29023934 434976550 573948942 975295179 890944470 904604296 580640278 695542753 74614873 75992823 133076776 235008795 910403779 500821155 882210062 718452737 987906761 498672656 693472260 239790001 128923089 574988438 205334842 408621405 932578677 863131872 722337110 298376395 20445700 643226478 244449007 957453523 631433985 582173459 369523475 568864229 223310242 349609847 490914754 315181184 6633810 232418710 10934896 693643196 683046447 406163519 248045191 479379905 434971532 282402965 145390563 708836942 212656753 122179730 159506772 205893427 763371542 638557055 365343007 274694871 81499756 81862270 489339774 951101618 836299412 124123904 60431643 609369044 193915237 463997263 20583321 196046173 134283242 356223749 669778443 447288067 224334818 857005459 151168379 66789775 490985535 121054396 40466789 382854496 847283111 974203159 90835513 735386342 52352758 68278416 64567260 198807336 129877946 114207975 229765671 921652799 170783926 42110511 687508327 286566360 542445663 256965457 5683931 383272886 374363490 618872455 398128954 255330862 566607132 378235873 366350634 652045994 910054944 242069443 704163786 272034855 128379573 618720101 100860201 657664950 210008406 736525138 756218572 943001854 209213232 244377065 661825580 376599736 543038119 952718303 138605878 402918194 366933969 173310651 537354441 187253965 915731705 955856729 103690555 166783615 120257821 96775784 151001813 14744146 378567793 103778540 295228498 476735459 554934490 595767484 416120676 355914980 621015668 345988869 600099119 201974170 552640525 624530629 870961868 598171999 641949095 977611089 200141256 217112353 428201210 180938447 65690274 247289314 466981871 202886845 785573712 34258230 944489254 227172456 637150138 820055496 753903217 550971766 741387838 78448085 171242839 598073437 904959019 307363759 42419090 716187881 12389958 42201147 912160145 58237626 655846728 122390387 497177335 144496579 599605341 147764966 687776538 847212748 477994918 588591667 695425413 666867697 187007160 308733329 490506358 211899170 802193179 842731082 567981920 648658081 749472461 774964540 131186027 232103815 880518844 200403799 4200431 14421054 895493967 734231073 745170685 999935240 50656990 774917173 278427606 677512311 816369717 217419711 653009777 907329523 632284950 341261058 182816505 763152440 107274419 944013010 882812493 316022228 101617720 519830810 931225215 690906541 521460543 274802008 44097622 894206842 231582297 454250268 966714572 914419269 690403212 672339597 159993231 898445551 428864720 79314147 746412932 767585964 284483217 745706222 489862464 974902147 10412080 196811662 801067917 919143631 535287426 475916856 70963180 632820673 604556879 415467896 850211085 501023195 979734740 617819497 728569176 751311734 171342402 473757246 461556071 952941629 886446140 145061565 382308489 176853936 19486813 778273471 426039617 908010402 529191088 645102514 912765894 860556988 381729334 762269975 542334081 468856568 300792164 796577540 962625169 684478502 646091938 298082466 812565066 995062890 88123597 960126640 954205617 641174204 533046197 312793086 384562434 2976102 429493408 401577459 319235371 364524170 136517829 256938760 362882638 555731098 573701586 531690315 987381827 271974622 646626407 966993629 974561043 281135089 287776409 944688756 894398334 250847812 293040752 854964186 338712438 441335962 977123433 923319916 970372770 794259082 247900660 508447131 475949788 324824321 611025399 732275566 437339827 203506365 714761545 754105599 341559786 229812435 296244536 647003386 95775735 908314409 194684420 872024097 542506117 422512381 741000033 613455306 724204530 741451100 581056249 574593631 627640274 145043372 869050088 521603037 267534698 988282914 492479038 45397590 478636085 900103245 166307713 828599407 201071203 260526473 400064808 800605666 891985237 114866573 436429345 739205629 843731491 930678494 412573771 775912994 346874902 837260121 934657277 181581381 68900654 863957165 130776957 361129841 863390365 291692766 325271434 693904963 270807369 425864900 15377363 144929133 227893326 57701514 109231742 540022837 875455866 207238191 779637666 359710963 52489168 854008328 817623501 219035542 121440773 204773180 364289662 479329312 926202630 504667719 229128876 261890853 440969328 245961591 284890429 12711505 670407959 757375858 964376464 471740639 786746752 32787374 979109364 658948130 200154214 797236984 333946414 223353344 800614712 553335790 346644983 802112881 126293145 265875845 428625788 691790085 205749984 867776387 891997148 481882971 481320598 659318021 673366958 140874667 319200506 114006779 513669496 659087933 200382592 1892519 715433017 632452336 147638093 456770082 168652256 379025844 348367293 865748695 416560082 169475856 948310238 805682694 176743272 834824861 455173874 434059074 865696878 243430280 580109297 871104244 421908902 160253716 776235524 647374038 247541571 752439574 243205643 824365176 812977006 651491959 867501080 414735806 551219909 460017590 361810418 970728287 16223447 51093347 324203923 775642984 800681641 423592613 61783979 647641016 702258996 926897077 549852698 883893889 583557604 211180129 362531961 226085069 195291418 786651786 193270930 67907831 150876332 294312102 963046116 633056558 844341856 165077054 915262752 467032053 115398772 464567921 713180334 25330342 976757785 533235312 794275113 896448490 258966003 56198656 22777567 168109122 968115867 103639035 789231442 951794818 518795037 940568783 726022073 637723216 384373114 850664701 144046976 289030826 513106215 879706523 208035011 66344029 292293517 967666899 697365207 542906510 816990855 178460770 262886082 8537909 381233895 876662298 612630462 572797341 4227312 657609312 890447802 134242022 626552541 485926062 381456857 442023555 389681497 6765074 825471216 295118525 568609798 417874350 619040268 313837357 363245046 839179574 46979818 629880134 210533429 878474613 327985278 212546761 882677309 224992456 956806509 637876302 681990271 883025825 186683026 556336578 430888673 135605509 449763196 747158755 903220539 821086991 732037870 995402694 509993945 325332843 582962527 290096978 319404028 922640347 463883640 12111811 766171737 318958774 667528344 671227687 339486616 611280228 964171091 207286244 944807126 949663971 974439407 209874224 323239971 174846533 164327653 989029272 441228549 139164976 69043558 14697850 176698612 571475036 745066452 396889994 274727388 558572568 325725252 62954833 677876894 589981894 139540227 980246953 670274446 825043803 940381454 126663490 210845430 868273632 441059992 677604641 869526418 914022387 954531208 801920796 908946195 53821767 550087672 623564383 425445532 790717471 468895927 450772457 574308168 644806615 642070472 604135695 352347298 847843675 176436449 280862713 258725675 140376494 792507885 249293857 50062039 53237349 678613386 650046679 861010832 612879401 27600780 849143231 791003058 457017657 909789048 912188752 439100557 565228517 842968842 423705943 815088359 975195924 265204911 539123058 681788791 393860287 157793292 544956310 150921067 103301748 509800053 563513994 803310819 525303764 260252535 223827049 708619123 98496277 678227278 515390756 731666085 699307392 498950511 100217086 296900725 343725044 608278784 886549774 363119571 186905953 81809755 218869184 792254244 727616334 77337743 708057940 479270082 726135892 913717215 896113758 376134007 391545505 378999873 641433156 798132998 377747062 267054815 669898692 205084322 919198889 6095257 757782379 616426869 344828708 825919362 277674014 255001883 137175908 380570463 368084373 720606756 379038971 622778411 713028827 691769493 981902350 946379670 412760272 710790760 173462487 119424641 220058279 862297095 150926116 837598595 62042216 42983125 96931542 743992679 450820975 581790117 591685220 836543916 914159851 247753025 679492181 557397764 989539936 222852836 370737353 539412949 884284453 880199872 91765233 720430267 721698279 857118330 978047123 8285444 346250020 186034089 897103495 50675506 899475889 119818842 63687484 714297725 983092789 980477327 984276531 625266766 432273580 187187131 939330435 93007558 863239396 582867783 678173780 665569589 471029507 148744465 135963492 759625635 426724351 730041064 166721925 760459338 764747300 472270865 991355932 128135193 126688658 173060549 892044708 266275123 828701885 215921072 201366569 26721134 953160427 152121460 833715150 136550613 839653049 563271204 112797511 490709030 594913431 25793225 80575584 807215957 916974407 967251681 580687476 118452743 23200354 850790363 582824182 535244824 258192083 296488604 720026092 311457302 912381273 381862397 272003694 340448707 318761226 562851146 176837932 600406678 989499851 490188484 301742822 818499643 403920600 522804768 483332849 488343311 196907331 69107975 178670009 995084453 572892268 519866260 820459833 605616195 816339086
202639577 423645572 136445797 306464051 762499930 333457728 844065849 240330682 726491535 339037734 175225378 432943576 993529959 525935492 146952246 305199635 627052480 448028858 754230208 636992073 611615472 878343616 974919870 908600872 434023231 120538015 583807587 603122611 490692714 97371379 653569430 247378883 53066530 654385264 930442610 715837060 405794187 105092954 29983172 405018100 37747646 408779787 808127888 347098215 649799239 901673585 769415565 16754949 817670823 675817613 321962148 209288266 191842771 904340725 872252021 212238982 563903667 968679762 349831121 120137307 991443620 525798115 307393857 479453506 837692918 187158265 951994238 481184774 982379119 531522937 449388023 772412742 711714247 823694173 803503438 661108216 487716906 738785587 889210843 579267553 314308281 471991196 624074279 219099677 368528905 928219086 486161779 457105821 274443938 954144787 204959791 769140644 388062593 826982984 685143683 199927882 773489302 274123359 253593801 307383033 53843271 189498077 6568464 344646899 911459051 945243996 365724827 907422153 595451728 851985162 796697696 256290789 167895862 382734633 713077130 200741633 702582994 730431885 804345080 51657902 776253004 768938785 454648507 907741903 50525761 730105442 922684060 215132187 105597505 852677602 254824083 613699230 504634706 280163526 69759313 427738680 171268203 815827273 66158775 684165404 854347002 424091959 493724765 843971667 664513375 8782963 466885132 643697207 793583983 494689649 472775236 555622136 809523953 590576572 171391671 223694106 813701156 76258417 89290444 887821301 954631736 753577155 875692573 719557172 27088336 531258485 21663993 786820695 232583046 161488483 440860387 98281777 742195815 861602553 293926673 95706730 64989811 55514298 944950509 135452413 815888158 372262586 377991320 723892155 843474898 829743397 604263778 831100871 682848363 188772790 2325587 905752857 223344569 265783872 217105574 83022587 588996610 255971113 135957064 274079887 133614973 863441386 916992605 383138118 568288983 336599440 300391356 597533546 577093554 629189438 787192686 36407445 482877729 981780137 254106419 238268984 504479790 764364442 880414716 278638614 364386901 363158896 162420850 959887046 894663686 589845403 679140206 22275636 938218790 620901410 737322623 93059104 760859022 945717534 681387111 796920477 801234827 837254205 284973982 666116755 350317149 16178496 76601038 321719358 398061240 3040381 484748117 155397550 315735877 352656221 86504390 178458437 696010530 478171359 249085032 673251900 307753054 213215764 195301813 793809182 670730366 929087137 622702301 222626890 607590139 407933760 921513024 465297013 335639490 959514687 266886648 759847206 368233394 113880575 582395981 1916217 538460449 382461302 909517886 345046365 191671896 241997486 994298879 391264918 508574226 403791171 310182773 653057211 496719873 882773737 382428348 773674745 245332809 573417444 646462114 346528846 600762115 886341007 353881385 434695182 569261244 673184982 727649800 797437538 582479091 331073723 666933547 385349316 406259614 536406740 742535983 346603141 120375974 387048395 391883239 550664008 434641510 549025757 927312090 225514884 820388912 225402716 328731074 656804101 990831816 394973997 417025806 831140715 780557031 317266763 620782177 445055657 49011129 564348226 28507409 738346375 696038239 623832244 95587496 291824673 767376750 166154200 52301159 963122791 184673647 483749878 290119358 336226459 661298525 354244076 615897045 618114005 182011434 240534700 19084295 927197314 741426746 775643580 517165409 160601313 980553701 88063412 723172647 848429445 669230585 869300419 475016272 296376278 846490167 99403051 582409221 261715599 997157842 582344129 635933734 13269057 794707443 756767854 807642053 704374735 723638327 212890800 970983336 858360049 580092719 396185625 988385995 896957105 184045278 476433615 223848156 699432432 863115583 765940747 671711422 336542690 131797693 418993306 851065606 715030158 849066169 322989407 20619393 754531151 709875208 774244815 423720108 154052437 787961714 924681331 878379578 211154469 362128948 631196522 275819922 412191765 485375615 641524964 941779791 802562769 398216695 125974440 696275646 403057113 520612404 888556943 155868259 208588032 604178244 402101766 852861556 576625390 701534759 372362896 77975900 582199711 555157330 638685506 333773882 408600803 171942701 631588166 986187616 232577244 562244245 277927768 798904020 127022210 503753562 611983948 12125906 93682722 503511746 714159494 963584583 940776923 73629189 87853440 719502680 714950176 65940174 743632967 566594521 712330297 975495104 693911551 91627991 443274945 380182255 46308699 46862863 609577001 650219107 747043365 797054580 523613492 170204313 179361212 442345645 150059897 3032321 416766865 891210900 198329829 304857217 793211817 908915896 499681078 243568112 45452062 384784604 294252161 785429148 185555614 689415798 236336556 331806405 322057962 549892401 525544436 352707103 453455192 499825515 465050729 529021012 423750738 954606775 911865453 793407360 655441877 123265629 907501113 864714931 970488819 662090197 758334296 634464371 993918801 452047696 434293546 406112055 301940650 73032239 17116003 232116717 582562378 475916169 640902793 926944372 720244371 835858090 806139513 923810339 163348604 581451150 938651362 993502273 571345164 861437802 597744072 222125194 398152932 872895780 25863683 346984881 34984115 440398294 213123517 832337368 70930367 527439183 649872632 602511641 787141731 603434129 469495814 427633665 869107339 384230996 850108943 613881359 861151801 129771906 994300302 133803066 314907140 550581177 864704212 610299240 419665812 429424588 768307844 943083256 917774375 108016706 573007893 381236537 744988943 410661334 430197332 658554352 853159986 823659509 656098271 969975510 529363081 858702659 584796586 723438104 135516321 118034966 125373822 337898710 202365213 163187449 894750325 862407076 612739377 631954219 403698560 862609163 7601449 67152158 366250977 187241993 277464800 434471672 853828017 929476749 900615241 738473749 51180123 502909436 850397674 200116866 122709279 935839151 110351196 154078596 482018192 722201458 943331277 467579408 423833623 241950727 935917693 709779024 671655021 692968353 635024196 889561892 22300197 813036138 941295883 959293086 624795424 573538045 208401486 539284101 490986006 376371436 323708321 287742675 518804756 192639803 522779176 586774583 350787576 534363363 599600157 563271828 4413175 309773648 163692877 85339520 190267672 324305636 499663259 870679238 543114935 27955058 320372604 72272100 562854915 619087555 512710778 709356942 850854783 556186900 794654130 18272297 495988357 311775638 554360917 275554897 5367742 378036973 547242538 765756499 714803627 820555186 245526538 62407603 282245408 736856305 551500899 114043816 668162499 956987564 726785974 20547483 343104145 664228949 744518938 621864876 45038170 805536600 652763318 629613869 466395200 148258191 398798922 868645669 549370940 536815564 42464679 875829454 49229721 583307859 127667506 491602455 798263159 206548316 562533990 29811234 415165769 696157077 722995791 576356807 273153367 703704735 166759439 651209744 306960701 761812877 422175580 229713595 15262826 290019176 381007616 702912187 115186338 989658029 11154776 412135607 897931901 637929676 799922390 379766154 997890022 153500843 241750143 817619137 115656860 501509922 19175534 421586720 741509812 179004541 61037647 701915933 248763669 844316669 395143141 605162851 598061050 980477015 784856964 53309777 266369396 845809715 927210135 532445561 483622886 385253550 155815451 546851361 13349511 786855385 196309794 83921349 624905187 665724215 539570514 325208467 344510555 6393411 674482532 410600429 809615520 452467432 343493541 779800299 644844092 737507847 789796471 392544470 838126089 613312500 840966353 188591278 858927799 407322361 841761979 224623782 694911307 302946258 294112724 175992482 850659738 119737904 361309644 424430272 807059666 93599030 856814826 481850828 40422386 940697087 655512710 226422218 952632397 375742998 686174096 322267760 188445196 514579964 975355144 199579049 520303784 7740837 275186819 213066771 355546996 672085755 392639661 964038530 902707729 566677594 112094145 428959611 906395383 927600402 465754131 891308986 813178355 906940905 282668167 894534316 4680355 770425750 734933270 530974197 830191868 182344007 322470224 144407276 756675013 16997148 114064597 981376794 867581209 269440169 417711067 255610047 546590441 941951864 75338668 994243917 960690040 109686661 917960996 860489707 722322909 299675072 608552247 723991539 334123140 504066703 93646185 327581556 829974445 311262281 657319508 466960816 782676972 807031228 517669926 637836191 368694951 726399655 835637024 15125099 76542107 373324353 893784088 340133362 715230808 655161776 174640375 860097351 957449920 707742355 13899068 357217586 58060684 780290937 878080120 82322603 342845383 621506664 190883024 526431586 602764369 730816855 573020030 799421498 606988893 987068595 651093840 908211146 626945011 906119134 683853096 452660955 156196975 583046059 218131578 606631149 122425088 742173924 814772177 502131889 804105514 751539396 260448074 570907280 814538052 745857405 749208855 489922851 14422267 37177524 408764413 610268088 118760397 131772928 568425430 958135508 347995535 975120238 991213072 71519916 296061672 106063872 715300397 238538666 341065683 60913193 348986433 554818286 427737633 608465491 151779191 279245002 740573685 315567961 366373004 210978117 183400006 961717005 194402898 174506649 875051360 858971315 923595823 520999862 394877795 714423684 609933979 865512637 272861891 514863405 339099558 1108869 332531398 920394829 256005487 998239769 641065481 762847482 578990766 118443319 248743164 749176637 242308907 8843987 493535329 90796945 779633220 176743570 653931985 900383080 390778219 834834512 403906103 604855206 385378982 430952090 215836242 439652132 234507534 23299893 156917048 568948526 207584080 152150933 918863054 346567685 920781871 420533094 513409616 648779614 737015552 559732487 247099599 332390626 207363116 22673418 516360110 703321772 321041841 305191862 297144613 62171086 311175074 978018181 765152446 264276684 212888227 476269990 314995675 786540063 508700269 65086844 105228846 689614515 254092368 275534365 139528254 142600297 649766316 61331667 453165545 366993558 590050423 870302623 57346268 119289474 150790586 434144177 982265629 491279338 265648148 769572337 873620866 683919743 916596789 765419898 445955639 89321317 450061668 910312985 786275644 460537269 109698042 853556434 401292005 492351739 115127781 61842523 898529368 671495352 452381478 485312416 504866322 204818401 131501651 588164669 964417635 412310366 611981078 877486343 60393453 449581708 691973803 125155972 383061033 219909564 651766374 544889709 178910178 875770033 610341931 151607603 301142455 346002726 197868788 78179448 163796637 20492102 105454927 634703250 896332380 559500338 339318237 50191115 427940365 677456511 691127253 634928163 946033314 29528245 160770942 130916684 128620382 111385041 676987064 123912365 150422617 219909059 527605108 117274273 698157309 414987761 508966455 87603765 168321676 148096435 998864540 426893229 816883351 84191957 115847119 760602367 567016840 589350936 961057042 89012310 184221977 959537072 717753403 652830352 95914715 643295687 139079220 806083521 698314929 632022265 707097466 189917614 906654034 905609430 692104351 143011923 919124682 699665508 37399241 412457054 432674553 372434074 311295536 313957297 300695058 130603750 817851555 806525411 424603934 798103464 90001924 808016064 832514679 843339445 257098440 271588037 275691597 235487189 856291960 769657765 568402724 372492100 511885362 719411910 180345940 363220021 638446376 94092229 573520520 989744458 514759456 5212910 874039360 396626206 488353522 157073348 51732559 966698171 782076174 780446079 736871517 212216356 619359219 154378633 35683685 150764749 36988089 250494464 868350008 109539357 751507848 385054776 470218745 896913395 75575326 296504118 81991328 395288350 219080270 355139637 413174135 874440164 323054203 533936421 581563295 307721340 810805793 594253095 473109644 715914132 466934349 633643282 490236549 43292363 444792864 485389298 961244453 921136440 395915087 235170691 911000541 26627041 292448934 787294906 421023855 400245829 785314944 86620221 936377204 988680915 679998801 246169318 926989528 477365616 278189085 897161283 941999705 641120246 48008958 202636057 680812555 389731503 373083041 495234525 423927510 684988638 978809801 139717433 3588342 307665206 724092875 845435533 586497659 297537633 113605393 519727724 468892103 612353402 418547352 903971099 586870291 190504083 570260337 493066005 313083369 204006192 70268739 59722121 703939499 477722314 67124423 688243930 399083531 184477518 466333771 301092638 890312849 52476827 551553584 621208736 478475801 647138824 489924972 900868191 472812370 754041051 545751049 280716428 851295040 70844114 695330212 974396176 353521082 586629022 445147119 974954499 201763820 107129956 419474223 958495798 672647383 201534522 157910718 521332651 214655436 549443248 286901642 637895703 878529269 854738500 50832020 672102247 26193868 679974124 938368371 44385847 878883234 350864529 12904142 8085084 700206105 108599182 161154278 932922204 426221482 102297397 636488201 81086705 282993185 103073866 496781600 742273930 601955612 632969094 657002018 850761418 404351631 701216789 148145310 331373575 885354306 209410584 513324086 715642572 859832657 878722852 751639326 17514327 109052076 785743042 102069409 536931100 155495829 517096173 604582300 105745216 812264740 145896087 35651841 836645150 97150406 428151332 769808982 238819014 330798010 541193196 803889204 888679289 328519571 778278078 640818376 151158831 492617913 969307736 608839252 188112913 84977127 920914416 836448687 349355774 249650606 213479598 150612161 319196170 165552369 185631279 459205897 513814523 336626023 99532548 758427159 735972811 325349917 280066865 707958289 239926057 104751089 176947886 359173170 476587255 744011288 515619305 971008327 798554573 94357144 838330434 891367984 563850357 163116751 636116110 135957093 151884909 692252138 829844373 706483822 806093416 989034863 532052628 556921962 610069197 153230772 827685820 263654025 12094518 138506341 888359089 938292626 522262003 556799746 235633419 65543518 947873925 456432990 543057624 184483675 836443683 664641057 756733208 89296138 301314360 273513799 468231744 367302272 623022307 50419360 785086136 434664169 297839477 12682318 238386013 924891905 576483063 289980745 653162496 187429785 120752545 447870430 721649124 661735960 227943524 505221164 870102596 246449911 574879585 988964006 91487947 100592708 896708720 568191124 663319578 550500384 276661146 349978257 138138693 947146049 78152095 979429646 478889302 271875441 16051313 226840782 217275849 143815692 553326007 785220968 620488462 257769094 204860235 434581961 482768395 63247587 370757053 308264623 362678679 431886909 502228173 70687534 255044352 205492034 171455988 603591471 824358022 458134708 251963100 961874412 941180381 94965223 542067172 711577206 428696239 449628998 968541341 147826223 960759064 659510478 324567119 43239760 221199400 3168400 8184949 674563428 451574373 786767668 501159740 792196555 634492486 206843505 333090313 102945849 656682681 301622166 119372784 884705588 981741470 991302661 922818621 858870937 980155977 739016626 581035759 945807383 584246276 583549352 186520376 345285042 403039370 71275652 57236478 921027650 313444494 431044344 790537309 559000049 938964530 157990985 598464035 121487041 621026704 582790866 171588179 909499652 652483381 66185855 326346659 578375138 927162529 453478227 816218877 814289878 671301832 429214690 195739138 833754417 950638740 925110743 539684738 377494678 573885280 569113712 988334597 676724604 246798206 403673341 435499077 708175536 345268915 477936996 619234226 656058576 232188598 835587744 10494701 397815504 700760500 749444413 358553165 295937145 3986127 956216286 229084765 979443429 29114522 27963320 686476891 359275269 579284894 572084500 318094523 234371099 741308633 151299025 487781283 228716608 921062970 15637471 321310572 47276767 539836198 219497413 570846503 647628600 148463862 686554907 368710934 563522270 76465015 669931281 361246510 175598137 917646184 105875687 469921692 110822149 530564351 808040563 906462013 509494482 9595493 500623518 442263076 248668546 875436597 991689703 845360152 143865805 207554561 878766814 678376723 265418688 28499149 107998378 954444228 920988985 395024786 391046020 587968014 871794285 255356860 361358650 293292935 104626275 992258989 201949101 93830138 275751287 191429432 103647571 128532453 708564952 634734118 414464949 170677500 298246665 570650804 372873202 374337700 994516835 6398483 60900155 679806584 522053778 83382503 682624341 98201288 905098772 617858505 425103642 955685141 242225854 408756165 458314488 755538583 825826358 829770461 840320368 707868855 103679865 625441412 98262936 272220053 319831383 934815779 138259354 69147779 411758834 639620503 303256371 563284103 193971267 374354353 445255220 819388637 744822421 236080821 620114181 541531507 640963336 438223067 102206237 216804716 39730959 302334674 143274379 739962270 170276082 528911928 225186160 881591059 502381133 828664867 575726723 515277708 533958287 131602331 165780875 258553849 742229372 85149725 29601513 559012610 902758316 871054362 338958091 267590529 916240138 51627893 442915578 636205830 225805141 773964809 911617229 826811474 920218786 331093537 586969139 853045724 634737624 637808382 43179758 57848911 308762930 641176917 577933650 496647434 981053633 471409102 678454986 694225054 891950312 524885382 514917460 379271508 528471774 266218126 183732992 748471717 52479791 666863721 27888244 996839104 382257723 348855442 389429099 812761863 605472950 83404532 521038897 405082770 41915943 572385392 859645737 461823402 755289961 414842203 320723272 192209743 864056108 265764861 925130903 658946483 885439604 507839763 825353396 825330877 583219993 438168141 82472273 620297863 243912262 189602513 993264820 607588833 811539195 679159222 1657910 557491915 99109515 749901962 193020100 494350590 490278174 245390285 438093153 944045156 536884784 155924339 302308770 187660700 230702352 313517414 187888688 66439287 30045538 388946946 733732170 364443262 437759902 968959128 45633856 684669801 773974927 991740395 298351353 1775529 558676180 21655221 496149102 799845599 582579554 68969507 142969645 504978018 943515648 593871957 62042326 97913278 254755529 101863647 738305441 640739632 507322798 101780811 458285271 695551019 684934898 870643605 681315669 927951317 433244076 437895853 899256844 390654858 836125256 264191737 735042179 268546392 825450758 856748240 629903699 23880322 159303290 824504064 420280490 722305534 564202506 129255240 618256585 942428919 95826035 399596255 680703622 831885131 554788421 648650476 674027979 448546829 449803362 777390347 935121429 407783940 226795651 48294862 249329397 102801963 1016243 303971642 487737491 887820335 889407698 916325190 958502 439513332 227015443 181886047 494985853 769882384 560567422 283445223 359399545 336187727 385636463 252684465 322736016 443137325 173686805 997611399 393714252 318952287 824790772 187806117 281834186 900780618 742968163 30075195 385904444 327867530 448956687 434008558 254575719 461566317 943914870 485490519 501214246 356664182 361098349 166161282 327844325 730408154 638262939 379511153 977610022 623962118 817037819 153419159 837946368 863534615 249140830 61759582 193792411 796575072 794193895 182963361 508709557 754451944 873033613 700686386 267049504 605903849 712471964 681597525 997764417 64255058 285024308 841994307 628290195 890515782 372378057 462303657 198178338 72629403 7424417 992853798 450625041 510467164 654785625 510811856 964961044 761476936 440991841 547857584 208621302 534355280 855776891 475066177 462361877 116815389 628018752 344041973 237955297 392309639 863575195 217351088 279945824 274242591 597749323 427806539 73032365 350719910 170875493 878333970 104190581 696966036 690721489 967078471 791767672 828066194 496929480 307825565 130980878 87623680 570245980 174470077 63138719 913674352 431527408 34622148 245244714 501294121 421902524 376001475 780789439 549397157 6549834 698015038 103399685 283481619 648507132 902580654 81076149 931595221 87824771 685809151 350062108 462886659 238462313 845071378 526674845 430118631 1557641 799275836 743091757 675876735 397242001 982871237 296316630 581044223 258830727 768828523 204529716 147026764 481345 622825180 937331451 98281601 604419819 536981567 72564847 559509870 784403845 975071404 956001514 957614868 894305379 414059695 436168281 579210282 68277419 729104329 151330495 978267547 107960026 108190447 750441649 496056582 958389568 78837513 885270489 813965117 537890943 640768884 23145844 499413190 683896336 677069441 159748819 365772893 392341694 710510068 188052958 29589360 802533672 748553093 706206092 426874017 428771907 488658786 976408172 346614856 434521046 663090347 29402911 905696495 271347965 14707701 510422747 944854996 60801191 308431304 157726698 552033130 444028440 645779233 523651113 419174872 540757864 156459505 213206410 384945528 719137793 509101979 943779986 193430361 48855332 25567610 976820443 566607806 250809957 531241305 633609619 832362141 722765867 302275065 86499324 689797665 555981361 862466446 322228714 344657705 607599112 801229890 571316296 717608903 688179091 420544177 294979475 614079937 955273 934142572 276420701 13410579 415499254 209041526 481337291 292267626 81395898 313186250 181961752 933454763 338574856 730119122 641856272 794181738 524645609 404565233 91342485 561131635 64820663 781670651 61334302 433060933 313086626 349635512 272329267 287595410 984889902 340586341 840100594 187272641 694143923 387016498 693907085 848504940 210834396 907236292 151415498 625554402 890250536 573974453 177833090 822244262 121867885 806856207 662058530 203746542 741936464 531852501 714901549 859561253 796432589 135705979 953792951 423008873 928019893 932522344 852413675 133244941 767699243 784687227 68973959 968963353 188197159 152652675 17788251 870107845 411058419 395221702 789298894 780909826 131138992 960387195 209082713 196934897 915352786 118142800 773091849 300717929 457429664 975508196 787467777 129175925 720928949 70804046 626807030 21373652 814692994 899614356 699728305 123569272 22896073 111253301 80445073 780334855 997018403 611720864 368670726 446827357 270252668 706565819 590838551 961357064 79057810 990862173 195938781 294334155 181209209 209292499 803710470 421732635 282146841 306457695 262269267 464768677 660973230 499872948 386481690 349006534 312296008 340251260 825550788 848542225 968748873 297538258 45683024 284370637 30051049 574115784 647665614 792922485 919119797 817029858 672369894 599109942 132703244 974184858 467560783 129908340 972893345 728096730 833786199 128875845 17723644 288624772 782576994 805324276 788328953 93859310 603145315 500431743 117067847 858319966 697798244 497451546 780191977 117585555 219653892 580879786 363869113 617664060 953617396 789482571 251262432 907549822 482393465 687949003 753060448 81027698 672247533 876443948 237574282 624608676 819683134 844623142 168431240 616406677 980069742 397100706 264125908 126379834 50861841 282522176 452722111 969640316 25458898 973472210 142412267 899561398 304532718 222131423 17399505 858603834 178076599 977057057 246640701 947792588 381074450 202963207 957282252 317579557 982612474 325555764 233668469 450962289 97002747 418998782 178431485 333700050 707189943 616180720 91246977 617839067 286725989 194802760 159532528 652725525 611694669 970582137 275640719 885072765 677197389 925990315 918444915 440653828 518932055 865847094 313105418 815419662 917243376 982190379 353681811 867951348 54612403 345295051 770011297 919388290 730573260 355071245 82997404 162816889 20959358 321593116 359591999 706730766 394415773 443511511 971438107 401492585 166892565 714221392 654432531 886465319 755653217 848861006 843712222 714939353 884970260 29257674 809306761 689229955 687799892 986071669 658824946 946682141 692496218 497425969 228389198 58315286 182000883 887099284 871410595 286261452 639505922 748660584 717018959 553015316 535825404 821867822 309542271 359932089 222638442 287986070 256629689 464765941 128617066 758596872 365753427 384386041 684892975 514124318 596841721 948771435 189585021 629827623 918417195 407492323 433919533 249774502 181144252 844813677 499371951 529614546 24589908 816970506 621255299 266161172 811665391 160156718 632859327 687982219 963258204 81357635 610018188 398388363 232933056 553841957 335907241 746129433 227160336 928905125 841393127 667917681 847585946 936879110 108432298 882625409 919842173 650016643 558681455 962900075 749343788 290787783 199937344 80252423 710170095 305592179 121562945 134996062 231700833 57960603 148642343 406439472 705445107 806793545 183178172 972416879 175446888 226771961 922712413 788860866 677988951 14009372 99310716 665574659 521413293 49699989 882097950 764761025 607093544 747695678 325532253 984333759 636475612 55837796 441119975 785882739 876926386 229420871 856772477 250288008 287804644 439160476 326109557 115594076 267014531 273932298 692628793 202200963 853528305 655642544 935558342 323094338 65974631 382416030 212046382 651252244 683628144 638430039 948641814 987053097 633399660 201753173 923670584 82972898 890657806 52590213 841440739 309289303 4831 130280903 21134966 940719313 992701369 177893231 872813032 764225872 372676172 662897351 879087427 627951621 856245916 413626763 431831332 447069145 227296129 701347947 987888701 404357605 451496229 36074380 243967444 758055416 917479818 807258887 151248961 74508053 838298882 570547561 751561076 774177265 834303157 853683250 975038316 349385593 213921054 501993046 155209921 394342218 376275086 502223039 6625563 671638072 612652456 988564168 670233528 867305160 596816355 388746435 426719722 986883509 517772300 257607797 426102167 703354990 699625153 272425877 681420215 860815254 801118454 545781328 726901978 203676547 555590772 286300616 757886368 8962753 748850773 420026000 163373374 616518796 460456330 856245042 531383295 29959001 625684309 95583401 639888321 778050893 830548943 777246951 811531380 365136580 207191139 827283792 746651295 252175052 258242129 804769085 960495067 79483815 215701804 264172155 617311061 904618317 713340764 435724233 676293200 938137575 206628509 558390109 519386273 244021333 907125886 890923872 504555313 239651497 302020835 906259053 517143167 746756778 324458116 319712278 235614492 580729938 100030316 493858143 755939884 968244817 616739194 266110273 989495275 635233415 869658851 628090153 319585830 660779149 847305390 921792374 45652158 625333805 243481911 585337342 623427625 258045926 127790252 636106889 362228721 368442217 975369619 274755925 193168690 799618590 352431938 682411920 13143328 968271264 757482598 257349089 744819583 789671997 604745597 47678688 736930601 92132215 66367835 302839194 287750284 312089733 429803945 302493710 630093353 810593491 984848737 337015730 881818390 726263933 803856212 861382126 331381629 81418968 977066148 437922463 31754011 100955370 329897802 286192790 306399682 546007533 1430673 550678551 593528279 250739664 643944857 300431195 930896084 976324021 572192213 408465678 920701895 863526004 852580749 750302929 28214226 390356247 135073373 90241977 941979817 17840476 531005876 207735502 426703639 82203703 798558038 132362125 266744697 703115341 886405595 854913127 157924417 428445305 820307758 299571008 599461492 817294922 905697038 691154928 205501485 977833091 344045456 902424261 556981528 109506971 349511067 141862655 892497655 13446203 960842090 275465555 336569889 877747650 15848718 689490537 755672062 353168068 467516138 797983070 14135180 368065415 280492597 701428803 381076445 407408772 11623291 170472092 935548567 876843244 726589724 285986785 829703794 682938657 593212364 245160448 27226558 886503736 322728209 770470361 646161114 270274430 134532041 33964481 48672958 246780656 479556257 845547520 864566642 978052033 985704094 320268115 81078421 640884184 106503064 535730538 872088535 819027279 674745530 880225643 788054398 895574261 614810884 162798189 792865509 512644813 818425289 813521406 14704377 83401869 370770737 35351710 692030650 765168672 702583480 599690818 390032320 444943908 464030637 721297617 36014260 261056109 109129652 539335850 336210386 450812032 208390469 525871901 361427310 200108569 363527723 963130605 726083691 517528997 48032773 659590869 663748293 807880905 343015624 590439423 502324233 123687641 719263547 584682126 674135512 790069089 225322361 332809238 132073576 117109408 467241843 108733982 26993410 709747208 706967404 267595941 874498181 840956096 828234875 591487130 996715490 610380834 457967372 967026275 232259742 827066941 392419167 631043159 750499155 604052564 968669704 319526724 883392558 746233180 814898797 463746282 586547059 925921410 854405451 556797053 968046581 341974947 897633074 935418663 753230750 99923923 210591492 588195971 727720941 114085847 854795386 35071779 12132467 503999146 887185055 744893708 748641621 73231868 702015571 813510197 735473101 931375278 618021577 919373580 18141353 532671831 480731657 33788656 865648330 182790338 82159471 385000120 555176871 506926190 130067498 318699306 147441608 812235533 508206014 682263429 988647755 996504325 765932162 914447352 372207713 935183090 811114019 340023336 272793042 71417890 986950687 375031214 969899381 283914007 468383307 866833047 589742777 391709705 619234126 664918498 924101408 275540321 829570339 994911749 56641726 996385343 355679643 863678825 561696958 133268726 204351705 748032233 677286877 139682187 618342868 599614039 311060205 897028153 469121240 528281847 227730260 823181295 108342789 350238722 653449610 670138576 58630095 673077541 141255582 198586546 843933564 80088831 711928242 13727136 735848873 624053670 62598267 568623192 811666117 718938403 438263234 30851790 448258965 677722609 734902501 99121831 329253807 385955714 487179606 311122879 410961406 423375546 303250203 78193828 326405444 607343730 904733005 357348632 468119699 397044726 895932057 928067730 466889683 648480136 495737282 492925630 500717120 137715931 303609884 512031737 93035753 948935064 235626515 346068438 613964082 392758236 170168226 235512731 271154003 524422840 751355613 390461124 95619798 789540016 720880743 203832703 954613533 900711997 579619836 236778287 599546841 469801035 129801961 98972906 80625044 697846971 536408719 189035003 830186025 572595938 126344932 678148192 975347526 494208521 743493873 514335052 874365169 18696171 307480917 88597926 594156544 101084985 366849216 165654153 107203231 761282585 860075641 881813954 664675022 134322851 497504985 672575061 216538337 903363427 741313998 297651449 450085886 544566746 346170201 950155415 302498978 562326781 166332944 998285007 707766045 469350836 680711580 645329010 140154385 252076380 119008572 318999561 339870967 876900422 943015489 682149453 328654489 645084214 323713680 573742253 418475929 613796580 894755107 278476235 817061097 201541246 664589960 262153727 784542289 760797220 842624864 490414546 294327533 477076075 598605025 139627140 725839276 8734171 153984341 245572232 409702866 379583345 338324121 746447875 654691702 511943966 969136799 875637072 843094021 375807045 549230572 776046462 159016637 529505345 425913883 949669584 561944371 827573981 928965720 125802300 785317326 703462618 615483877 542131437 447193673 359174764 236465816 14330562 502856245 588581309 711048027 287815372 632677748 429762409 465853611 776987348 188093632 411201793 279234330 835545810 306985506 778169736 518279630 782003063 363036539 95008761 701502207 376134820 626136830 865194943 231645308 981337585 907143092 347244859 310171687 369224999 23312887 147068993 266627188 818571462 24897015 42018459 604456686 239132800 489574456 988211333 174464691 400535484 265250322 207615279 730506483 544882196 387185200 366943039 18669428 921608663 115789585 443242828 354613521 704221832 358931338 475724900 282552374 819864925 715920194 293544070 635742566 934440896 92112181 561240873 627884470 48113618 226099762 352969652 330135887 234860771 911545693 167921155 18441199 509016059 466705069 738036969 588306281 313939029 123563375 149538984 668573728 642671582 494343873 360915322 179192720 284088250 90476568 975226380 882565830 553886400 104884667 383817726 801825506 499238393 695659845 753288804 351247772 26369829 593871911 40604744 30368701 566465845 913273379 935455525 649545633 143696082 375860690 382556525 18685372 234823893 680602911 795601669 748821777 286392013 512196042 455561156 656404924 277050748 260369383 901113847 637766506 577814874 547813468 622062816 887785436 533707537 815531366 647102770 633106792 700317183 674066196 767339415 537930616 866027191 3724747 890878250 821580040 546971520 567209664 223338493 539648812 220165332 536176769 90402197 212045192 153390562 782475117 918557545 727150806 537702669 995476535 343605094 562217316 845232748 890062951 109348462 384222099 322481224 488531161 692498644 356737625 144457632 55512124 973948641 4133824 284074664 764727187 639121747 370227045 432298821 505073336 825646041 648379129 832442771 547695828 103810456 354681028 474220640 558073064 352022953 833942045 437285806 458179144 838487448 768109043 883773236 261617947 152192487 987259719 175644894 493654236 256101513 689124783 449236809 731474140 847924071 607324629 778625096 605512381 494599390 988920822 828997986 811736312 726910015 796148324 23825489 280085336 687991886 341625349 315109764 43529085 828305860 254731473 914245790 178935131 223113677 313799767 238142708 238412728 349849739 629945401 272376339 531072689 201136017 318044843 602818617 449059381 97786472 336696056 253237463 425644168 893244173 402733053 401892117 40543426 435279473 72781484 374948942 752864590 92595960 67762315 528889999 961829996 771110651 92067890 403045148 265324719 863918406 477870033 615163116 539359615 853938074 196704679 189417256 366477207 716994860 794591372 198128560 804328328 111856420 985208424 206406550 67063861 125740831 774848697 588065184 919933269 791542190 295160594 393055946 548471285 742357205 847423894 385353922 825624307 679348877 308946305 155585131 288396164 677220162 977444767 346376282 514269614 585887829 424578771 482884444 244159695 994545307 38112402 414663406 363012628 123050204 89170277 828947907 60483843 866168917 164875115 624546882 892914 371715382 711270100 563372294 493063821 312057125 756780647 88018780 358179412 164033466 387731453 364063688 762577690 542632193 97643267 192929920 95178119 776472059 407065852 726841839 875586455 421461276 556105725 651106612 235600153 656592590 915133744 203543200 311529010 39914989 915735889 771548732 621087191 958039114 650015540 906063937 630165590 203132713 102762045 578326429 610952654 242482626 145468646 737581685 81731249 283194307 134959421 374015645 453590601 728001484 401967459 712159778 383669553 666088945 207972366 620729793 846733272 555613756 529636615 283127149 783865602 51323177 246660013 279277773 502605382 682751017 599183217 552157115 232585872 149827103 964898392 707732166 998583969 223964646 698318716 715998129 244323722 944103624 136228235 341009906 987959605 138721544 658816838 56945972 614927068 519065690 114881540 215710677 477155216 713285222 757477932 149178728 619508915 136987976 205909438 10693941 505476222 258339347 246629579 276394676 590169724 66080585 75812857 262444054 931973645 335020388 565810944 194773180 479450340 202493777 527013167 410022333 999625098 665556208 532236775 517490277 905391577 621347221 789287711 127079088 296443265 549152394 349369823 120269267 426949766 539177867 612962501 199834804 761122239 746516296 351258243 112939117 191043929 995469286 806267486 55677645 598090579 824760191 606658225 185040086 646293504 780845725 686653800 528505152 511853704 563054275 149080710 908726005 741964646 730954980 418709663 258299283 415942891 286015978 846822238 166121965 56786874 318901552 525860864 928729738 560554826 154234633 50556888 152451109 211386983 554055991 581362889 421206571 638239154 609768308 762652623 313389888 595923996 892918252 300380534 441383866 939753839 940621761 912274017 558892580 42944709 546519430 710824389 115638717 956764943 565463493 359311339 125232886 679239055 933371769 189418161 340091896 472765534 606701204 366697994 988467484 139879143 524490363 281674873 756352880 947449450 270326917 184006554 626548537 646075002 201904255 719229082 66295915 393808255 518072618 952821946 351120179 90247989 23735484 12440015 917126254 161465643 611158875 303521989 454567983 655293765 350064037 51831319 680066109 132886075 752980267 33214041 725094034 192157208 739670257 787489967 406021085 157811899 808912368 788241235 716360193 646469721 495051157 643273747 712442004 736641017 561667647 887947984 488122721 868682231 8492484 234423808 322190054 322844801 252933101 941901100 692443351 744380445 88472821 78652787 611843225 80675361 855541262 896544261 251933128 497466682 637059036 931331754 499149489 213696486 237860087 305693753 889340632 835041017 332674158 406226721 604061556 89632796 794546239 539449315 412659182 259996233 183934432 335551381 841608294 730819665 476038329 425286241 642388526 585035606 805106855 288540164 205687373 464326481 189836923 252810319 47806461 271488909 405681785 501969833 679988525 818936106 587639002 28818828 871938303 952967067 633904714 238061828 904351819 960484136 963370090 870198067 897938971 350521197 483050575 937404367 886215213 501188057 700422913 767750562 705865588 177961520 569341437 572809993 744575127 822601482 678596532 469902454 405974641 577864785 182210570 756135663 153041039 872846791 963327703 137600140 729422261 385314174 94001257 4868348 454963801 140314206 358271489 79423489 808683302 405568162 696466513 178502127 751723387 6995547 673773572 648491057 332479978 505890284 608700982 195923397 700047033 944406668 297429240 557463995 596092004 426593991 782757326 418631609 868707865 496801533 379044912 113214586 752518714 141392354 134973964 631761994 729125087 500105468 739854402 457253772 150860369 973099305 549397287 548851508 899132304 227324182 871913731 841928014 996861135 137765832 175264915 749719925 75060722 951032599 318633863 230675292 706474263 310500398 887527685 393497929 690238730 305444365 799362596 138758805 374792655 210531335 350008946 57871917 330395420 574140484 19429999 455897364 317240028 6362176 264249360 464174303 831984045 864110410 621422909 824661047 218338659 573222662 969756754 304708955 576899971 885750252 500781730 645044379 260420552 938755014 394180847 189250270 782460578 619158582 942991348 612948509 304543666 177559854 667100891 448637413 942776912 409786230 800053191 520083929 413401605 174543657 178687564 145646126 813950737 936193080 569944050 695468078 668871398 46218981 163718325 943694005 629796523 720735818 99317640 129072311 792133562 698026192 62256845 59694008 370169378 669003448 474555614 151323730 218016549 747906709 798615176 985988787 238028731 592628688 861825931 751192860 582235406 743776547 767123227 264032867 150130428 809653023 114314338 292361842 887212184 80129702 999568123 543668934 92584618 311543153 225467769 950676208 845374506 500481675 535417822 144738583 591150792 34240723 109271588 584441461 286299495 274208127 971641528 735968726 990583454 115839124 289855737 469840412 900303158 108332911 513965502 894744765 629249199 903946559 745230285 132170819 456745914 421540744 205652581 973804747 585872064 979787425 645339061 488539783 158012506 151547959 642087266 186083388 474224086 378460104 308178693 364008389 717285305 899963177 730381995 518747278 396433464 408321281 557025107 843856921 242566077 797272907 375919988 980597372 396397928 720738776 490441588 713490145 944712587 564596938 837044785 161768966 240439853 216952091 426262908 688506043 595289480 486854420 282123930 512263782 713315980 141402838 512978626 370660226 323239770 152418516 642403745 351114779 750868425 747316823 37914584 769942099 113355236 704645625 893855101 693918433 953536617 860067370 29838998 270368141 295178572 574836143 837326241 913279413 433859634 286654493 824766479 651018444 544983799 384154210 392710852 315651797 904320552 4220733 483034777 701540076 38662025 685815233 321566427 531630013 798994065 584532438 127723465 908695051 901583081 781588664 515901721 368120107 683036913 870813046 98865267 470259590 403383355 944655732 32141300 347818779 814278670 374669546 857601197 727156218 925990372 511910242 704868130 251537610 735263724 497834046 597994956 417206596 421575561 748631343 93604759 102695093 548149713 973808319 319013989 670823552 675562510 786554568 60639112 994485914 988272705 14072571 562932812 678700044 908232090 825705819 226686571 442803061 632109825 735940799 614842519 634245 683519377 430088019 634026739 405099907 102039831 577263383 905848730 113191880 161731735 587559519 3992855 266822210 868205255 48494673 992526059 640532210 55266451 192543594 967272971 454735470 822300567 990999545 780164447 326140512 42027688 35605155 389678660 369261061 617973324 608382685 871588619 58125998 766043964 164897653 692753272 870905410 569442537 295377674 345716035 578924987 651809781 424850063 79486619 547716004 913495221 981815244 433050270 353242786 860416438 892141021 870906849 652047848 468092981 450993073 472728302 328390081 27960997 194818188 30747841 426486282 430991149 301145733 215165771 733092020 152575016 418659593 169822192 615325255 647188643 491705174 60126728 38171226 586617570 847225601 334481761 311094300 434173659 46646897 544927419 998886606 967679161 539803489 132624459 263651911 937057626 702350178 873558073 852971887 29877970 517350486 339216673 512396484 854909670 277743862 407048854 40021720 429200274 348516686 848451995 284724432 509764996 561697596 114352936 122504935 913611934 957068020 8455339 666954473 482571383 450240894 53815940 894113464 110004443 976104758 879053447 142716107 554338375 473245260 356947582 459661482 424127598 94356290 171010213 517959027 937250998 549831025 926157356 383441496 24848060 593418116 550697401 578865951 988029132 536024570 106668515 707708576 690915433 732713384 732611000 710489931 564263627 537720373 651838776 115675039 868501852 896621725 812351959 885044404 103037498 436488111 142066943 501966514 50321593 29509263 903011468 358865240 905531358 890489652 624236878 442448502 789332708 627703019 605907338 714424947 919660987 652780242 748482425 256640711 9216900 370052190 491935176 713298562 615293718 598181846 713970199 217893060 760720765 180664021 900578170 100804931 693939829 593576652 186892027 333055176 767605491 276393341 985805333 783033778 896966045 46631809 99830075 843123825 183929164 641353923 179096655 766760460 74486161 809185539 185656107 815922332 300523822 290617429 811424284 54268879 652178073 972676511 223530593 996203878 93327996 318532382 827319472 17377206 634349623 607535329 492199346 291145259 395387997 869389645 91495043 703277505 733363507 278887319 368721203 750492553 468934964 494059085 630331207 964991786 510952847 652933070 987195960 664316253 378173607 690167501 343339506 271589488 989870226 955827922 63444823 228727492 355899291 272324280 666998970 454607184 534036161 664816944 155782756 386294299 134932021 946961725 326289683 165094085 421253088 593586871 112264822 884724991 609821658 566846152 272746930 218777358 661742324 267985521 682591200 752617548 901354287 681454342 414678668 38824359 111417923 47531182 306613304 940874785 892221465 152970468 24474327 663875918 532302673 638815993 41324626 90856409 824633277 412189839 170718983 313569279 197645540 771662367 759402052 277902866 603995776 300053876 41965264 557108983 569122560 562394158 684228963 23926952 780879367 186594369 647569706 586317492 731046123 215815283 248354372 291521722 5141815 164506337 319860807 353062641 375312169 932188538 168250043 310695587 16935989 35003010 229434781 197248686 973808512 286968081 173674462 185666562 482466405 60028818 384273378 281176613 656009460 703431748 501145090 168090546 222211694 56623036 387744522 256658645 609587146 183806305 29400251 142240721 408218164 937320431 194477642 814555514 888415624 694592501 383610591 806247355 458669787 948794455 587516440 523539474 467505395 110122700 694570115 922928143 267210954 742487137 295434791 947908057 356322831 299315700 216109820 456592552 167389604 307653817 139925358 547654988 555805217 606111417 485457630 253505189 674356304 867428174 759519777 622108712 231840687 500201385 158991359 357776993 942907121 382371148 6489013 963644779 640745597 744941200 591328628 127725434 266303725 463242017 719857375 97705297 106587025 566487165 748199313 606955212 853557482 580589176 135497621 486421336 47781679 71358906 169724908 35296374 732649163 174335039 491903755 642248764 814717660 925801942 427200858 692910035 394297782 846538915 693706678 368626170 257151839 709577118 388710383 684919681 122278928 252562706 228159307 218402255 785873594 855122206 886677249 542316381 902685054 212473399 414183103 797994041 585559092 579574692 816488229 126259844 498389733 485569537 488964680 181867252 249775697 483492285 312900656 205673811 625410154 796143004 539041113 366911742 659866839 352415029 720322870 265434982 263027570 876063092 952932009 351877778 436535499 751020826 57022605 227209628 697216162 91205944 706262061 324610352 89861744 653795256 959598537 885496336 128282591 499544020 553828120 689596818 842240334 422950557 335058881 129287200 747778126 775982965 394365409 867794359 548572711 476930709 348878472 465976425 128523348 963227016 755318331 474104027 525786882 136825774 890518900 810981063 699365269 652466362 423249181 298876283 106502948 362189621 611200793 396846681 840870136 294702328 538979004 747635541 515909905 89261494 2899789 885806970 892978337 494424944 470529675 743292773 793548942 783669502 645606693 21669832 747361780 133808269 829656897 851981289 130729633 603941916 81279222 203866144 200680344 817893374 361752785 778109020 125271439 790916954 904311892 839559327 383245680 977317550 578364018 624886141 215574748 321144904 207883285 778055842 543842979 882838220 251968665 820662089 61442381 115786161 766280270 622192837 499193748 850970563 282519289 647557372 108935912 908757411 643679827 185142502 942331882 143259202 72583817 932567827 313402097 39135082 662476986 399184418 618889864 697178677 505388412 891853643 492937197 473144723 194455896 234714838 860534676 709434057 677656905 190340770 759486371 849189869 453327169 323865759 865108595 467853419 521333925 29603156 715247381 708150147 95097548 489307226 994836939 96805064 75602819 874798814 374688906 654200482 181546380 496917027 290857343 743111373 429693722 389875198 350728583 47953624 663088214 632412504 300701365 473896103 476325854 892949680 701940944 408950514 167554881 645686934 935770578 626344900 506823556 929081393 600907370 537859836 300265376 185096122 397930107 731072719 888672513 698087679 823182235 800520772 454656520 26203617 765381525 124498358 435058826 920445654 447183591 505594198 494879312 795114343 357122884 471954855 127766933 912689843 278482964 155987456 592282507 521650155 376935151 202725134 669186262 374893268 141418022 452478287 281602063 965631048 209612602 342685591 407310914 705325749 442780515 269626255 170027376 861989532 943298058 458311217 106469646 550084883 740706127 454045774 255002756 442297924 227573892 978960136 152859568 623601132 191442607 305390680 297760096 681203165 577228044 781754249 94255579 363826300 479974281 442506683 13859673 72184643 757665097 403883617 209029254 312782656 674519330 659566531 438512387 331421589 629735454 118858109 268690405 349371382 978766846 794063102 932374068 677798190 41482674 179775498 804007789 494017946 843845602 830297913 845779457 82426796 713696616 847575157 609006548 218008169 260248532 840249728 381183679 265259500 662470631 6283884 516894478 729708001 547986968 613671969 288826882 39770122 630545682 754533082 986663504 332046014 823430708 330412712 42688160 957120869 425240079 747353070 506417679 641900797 831390444 900241379 434511533 952337048 889044804 922163987 529030656 368376284 355275333 846833118 855156095 203607425 457922644 618571512 800340760 540023254 626915718 762222567 63979435 579746621 291319845 524042120 215208845 75934891 884999985 885059211 404238086 343078953 474561244 78139378 618442963 259387733 165684493 813644694 872956068 393908194 848877534 626959010 403885471 581970451 930467358 738646550 141825244 593671492 461492176 789963589 403094502 968845409 181337770 284796503 636596032 452941933 339521687 992472776 399902430 224874237 926488630 504361447 64983208 326375610 869058904 894751064 846636283 508282339 631541126 427750803 411673383 987689672 287373432 86771298 473502194 981623888 22138015 973751655 566287891 479733364 723241884 772332692 198212792 774209218 939131590 195727024 850540544 464594651 148117929 647424473 445843842 701074165 164500098 838606333 92543685 497331289 89864388 431672671 97092037 569803750 175021973 64892697 625349493 789312652 204171857 174295444 559378487 652576210 239272710 97332497 342792293 934469201 585862903 704532515 742678220 186991159 726101786 219493939 190606124 703775173 117938330 40337403 563794105 111527377 241111893 681829899 233414813 206179397 909002334 664018248 255373940 350548638 664774268 282577768 574646478 588825198 942191786 151128951 861142448 697428442 219421845 610375764 315158803 966764060 925643553 993781044 546472804 958400002 693868260 673646623 504927235 204501613 216691370 146854510 288651204 850412756 966451183 147381075 761707376 399599550 236729192 21405265 28201029 760931147 277060474 70825920 408863346 400223660 812372673 661617483 487388060 311567271 469671051 843488881 558001500 663003412 839654747 330661127 930699199 481276258 590550886 910029236 475219908 34996754 279364889 134236275 831169506 405468987 335768465 398156053 97691775 996590085 467190049 887582652 447102586 221693742 960622032 650873698 983040930 475528584 662682072 397975120 526737212 720009336 235612200 365806759 419647617 15940729 323897571 730347226 694669597 630600087 421937631 588187186 17113010 474310645 295069991 826276681 141624403 800554567 475095930 486524559 247979273 313429593 414629065 975035593 216573009 518105990 461351613 623691660 719438748 87777089 112373038 121243078 4690894 361898384 100066989 754255926 350542784 580608395 685103355 341510639 2646719 895334882 413026192 910496985 521698570 876519253 95799829 340556848 550473815 557346105 160271082 569944835 383395918 811957242 288763809 873434294 797117197 205553043 544022913 142602624 170412962 507441175 400896004 739487982 879376020 996674604 931004761 171786334 405943899 412258187 362599138 868991877 194650595 319857538 790315447 956443882 817177870 652414833 218145058 128232552 222506287 871550800 602307873 885569968 769063311 702897192 697273064 434782917 237898731 593895573 520419164 422156414 95913716 488946507 897541528 194080519 52623566 744853902 274170732 227632736 252687249 647844280 12001753 517385949 789803979 769594807 536364438 492623268 507434237 872763276 327830414 472088882 393462297 16302541 810652000 586542550 592050699 594103843 80057310 956992053 505931821 638438861 870584206 302118852 33894608 181700636 295027500 813279057 601936826 598237429 647804454 284680059 463392419 304764754 415955230 613165877 902136759 383441345 832814700 647174727 520601111 866155235 640619674 490176461 117643351 37512686 948904678 305916598 427163394 714565932 116654019 968548934 577545490 174070906 767938392 293560468 754736760 442767818 34788863 63828237 195609754 466716065 994013895 39820527 423195343 60908441 902575091 199073743 532873445 8721120 170787705 418790932 663655324 507714232 467975556 969503609 395460393 647165685 127725299 152352143 994685876 202294402 572069848 507606072 713348570 706196444 169340921 220285997 846721323 227871637 789506898 449288058 870327981 131684050 953911952 516769789 58118487 568903118 442080152 274798570 932010647 428547157 672783870 62209609 237881549 409894986 126976910 50604406 926180813 903606817 211290823 155926433 329696609 308744549 202245979 811135308 714500037 569559859 119666353 819593680 314171433 168292030 108938339 435476440 900654387 289830857 4441280 316192739 837320058 771870000 794370379 623069894 491083276 722355039 983427898 962098728 470835945 567917273 860780024 363729669 829311365 225961138 445392291 767284780 745906506 415837462 230495118 305074369 542349332 54816704 352854721 261694139 613660339 801580675 288409204 935720295 352459116 645753797 232448152 913143779 101942905 972412671 696655950 689978276 727815300 332975422 472369773 278251761 231845680 620473253 104374272 410916197 338599312 957816809 142770886 458332785 515961518 921314003 224347057 411591639 255638534 172354242 670915943 688092208 262697480 794744870 252371652 900660583 471543449 389916166 387154262 97605948 831142290 82094203 360229344 84469187 846261056 412104499 748103383 598933474 407620322 168561647 365260520 21245910 153132847 477160197 676090736 48430510 393583309 275338206 784993538 160799694 8575707 708066681 590169061 135045998 364948840 494031079 219815059 832123161 577226233 702831565 579802684 17634095 587095559 837156581 57615681 600875107 509954430 607472253 222112185 702679613 448426304 743621366 243060207 397277592 831237024 676593478 515481825 282490149 838617320 590465911 309654723 798568935 19669459 847976742 435823482 450381750 3789843 453620228 132568354 224687036 606736076 932029528 184880265 293294330 335256855 837383548 26397617 862127300 396912256 278151772 508208722 860323137 809088393 559644666 760929365 46648812 96385061 80801260 818978906 367784470 566286909 508923100 161885747 700739937 769253423 23396615 657099623 299799622 63999306 269834431 694625200 953912976 198323795 616265449 40826237 215575519 844621314 691023744 209121393 912640551 909518726 967178256 605234658 171665454 49834749 556625979 24810331 386809873 335648253 793185848 351066394 233863615 736090126 302474063 518296210 567859068 461851950 776289886 112223467 347023456 324319819 945026135 7428989 112914134 610456012 552526016 995416153 460807453 43687433 824963633 82693824 56457162 407448014 230893785 866752937 898247748 291474140 868251898 590109759 758585159 792015464 432845673 499133025 122703202 674897819 74449935 689218849 349934969 541266448 973827690 804156742 74212163 353579608 992651276 176538057 300549581 534061177 570460955 266757723 658967541 389088875 263887056 129547230 79849199 513508506 677400056 775188712 469790916 258382439 419133302 81167427 714232526 791976615 647044287 664459631 48072254 362324002 54549084 574945567 119093398 296658965 783710828 270145464 989222959 259464881 595063071 323837397 263062709 319359897 935025980 309868229 708577701 697899624 75571868 610684171 130132694 391754537 856774316 204982494 272221421 741211357 509099759 627843239 536586215 897171961 567327098 151525253 532411795 989017829 965671799 331071436 290807317 221870206 689274786 221933953 29932133 318294164 603143887 124294880 791791310 625698413 59156066 160482007 664079215 706679104 19888341 197129608 517660349 303108795 696918069 381738187 108478463 431385982 434532518 244245673 238174161 608318366 486796507 887100898 815537314 405882659 264493726 501143656 661357878 948102794 569365838 505666018 51402532 895241027 606114396 341830186 375350104 628796980 617466317 123264975 286951058 191832116 324327099 808365716 429829606 398093457 360634324 131200495 66373947 283778443 532432345 211091851 348214732 771155670 727800352 990487494 890384554 902907420 848456979 675980340 438651191 686705017 498312879 978320410 805075884 743877117 964304134 927385843 602922388 876678701 179978429 129797871 807442511 655183491 917794191 588459375 218455952 232669673 627249352 58055051 835681759 789890626 192235978 534270092 418202904 299954914 532214924 366967410 793671403 198612240 559678485 25840750 645442906 343229579 511254278 940942185 226489149 924888578 944350734 578897020 905314497 440565659 264063091 772353398 905338853 839340397 792173712 28920154 598274299 651965957 817473617 510482653 715196717 12421861 329531320 132267756 169264374 854331137 994523484 408203556 280399013 173690688 568354021 615956056 229101790 364257537 124205457 854790928 79716632 161971347 378056370 999649796 613572127 451739579 983229486 701662372 512364179 487694898 649200894 441371539 539309928 159387173 556469167 941841191 329345125 737328307 968226532 839479276 141459621 102978163 248572881 147005726 934025496 645322219 71598786 718160178 740219651 311230490 943617426 66526797 768743548 690638575 765954612 703510219 684971759 682085327 985475886 60212154 388019612 674779155 683521561 344631132 660312086 101335431 308227107 802917289 970881221 113388269 464487052 818692298 441616741 168778872 159911724 674812831 217893765 350592593 551209196 146002490 183558921 409294614 867376200 958525026 808064169 223632470 707476948 587831825 127400560 946271510 501600436 211131383 481175613 251718735 303993122 576137204 476963397 606671725 678861547 402545569 797472143 199263953 757786098 480042696 403179638 73915472 36204204 349179880 883385131 841929651 798215843 312081586 614703153 103057205 368648948 672555662 269179103 694290440 668882128 749228823 99261921 86334160 132302334 345332379 336585144 721333286 251494231 86081692 114381621 440318230 551465801 793835089 579321858 993550241 746091094 776896294 729043225 630309180 60752274 135945015 472082762 384045392 580091687 517968857 21749690 482801080 621568212 107342354 215042143 848042821 73266282 536458012 429371525 234658365 487933518 421010150 86193484 83111128 891465723 402549906 10583591 308483522 208030845 836365048 115408222 471735964 556496118 481529634 152205 238443643 713967388 999598286 639572259 940369000 615596985 326091504 253078756 684472798 461490986 196025389 2839656 565169486 58835425 75124576 937402265 869358238 439892195 85334040 670644281 214778790 560410187 371426584 839601242 957524146 205485509 201409239 926879971 635834627 649541908 670537726 564039186 963699022 765194892 92692972 331892725 529762363 721961880 979817269 42764015 335479015 39746357 918783519 857636410 877426018 779529845 971369763 127624287 985374002 645895422 799841138 631138239 835386319 368533385 940603758 423434510 733466917 957388387 379904812 707319762 476030485 31102447 579905273 339897064 550308595 418800417 311020498 239498496 347633161 259429892 521040362 393596188 635606547 593481270 800836392 630409493 720447682 717079911 342158246 245127702 301101369 770627550 956172851 60072735 418065555 827035379 765206738 506930563 606442587 799494038 762104633 246956394 761493265 401894087 310953811 799620688 521793708 743173147 716230590 573301636 957844243 868994110 994245710 767299754 562078371 776821099 644274824 356631098 195634860 586628086 368603688 164494846 479196660 427103427 842068379 963253144 343528754 369960396 638088838 43650809 954379156 527143070 200216637 962761963 576895802 222631644 169906252 659287433 380814776 639955643 857797362 94392514 164048536 906396549 929858465 617918681 195732950 203531798 951635328 999239399 953161826 915132258 670044137 85665624 762853537 331039469 356692715 105978474 490746093 351770449 162841033 490775729 628105744 860349628 593637752 286956438 586558925 570076527 704952613 170229203 604164951 313717312 625286829 695150072 186535384 255179545 93053732 127665898 505470700 745041782 707438415 872541279 977519395 266055915 648878633 898065250 578053762 727597468 436403554 419554517 2973442 545094339 745601499 745777642 121010448 641035054 611880491 878036650 657447436 191648703 219658525 620099694 247548618 661793770 939718192 362685032 523021332 826075194 481725462 324218395 710584613 938424012 537540917 990180831 301642287 178128850 594663465 101527902 467823830 812103185 981580864 512629274 812152500 406155107 658548732 960463845 821544915 813622070 349715861 703769446 693667638 936346380 995038068 669135515 591380816 862071033 526884537 301064018 161647754 168480296 766153143 771377582 135115714 586916694 464448115 713213096 927131847 329166165 526998824 659436684 290445534 309545867 305607365 498315640 49100096 304665200 530648429 613216736 470317977 17270804 173616886 147666701 583050379 850028182 608917355 365842841 598835241 204522670 431857546 224984052 525237372 611613732 186048327 952711906 368607234 275471958 47084103 724158459 868614698 455247030 377065574 660831274 839163353 157125450 726947890 439249455 295535592 73677099 331312493 102497565 636771235 230835462 868926350 81434332 7547723 420438430 852495937 849022120 178691733 689538120 234005987 685966736 130508586 596087149 970639366 396383480 237064485 25503499 756783603 514789143 813024152 451268917 209832227 958414714 509206279 407339151 434220485 240989567 851171306 122874066 466143548 654280411 820434224 700737870 775242398 776515093 930042551 353421155 564329782 993172232 987172309 572024071 396694274 636899173 171974610 733102915 521028405 848176431 743169643 744157878 761223862 174289213 780119633 627270160 78992032 24705979 298940840 27133080 37605568 206148777 432843912 506052775 241455642 105969242 454269824 895954475 423485797 637268471 788584462 351527717 951820170 839648762 505781544 366785579 951112233 862782131 251066806 77278951 134900243 632544967 147201813 756432533 80764369 533253035 591354773 370299017 541124636 335749677 240671484 504515239 448980067 528272620 661256962 772585449 999801672 623418587 299390419 809803997 402544419 371329474 334518928 96326180 446903933 928406205 788915662 707176693 275621014 65296571 650003477 76773783 733624801 750326528 297735266 27263466 227773571 586081699 529777829 176565215 645313239 832266257 902856260 393410043 188067308 651038088 463638678 750479321 502534661 709908893 48882025 361151141 979152152 638435511 781534077 297875361 655134544 563462801 245229319 899745955 126383500 623783100 730681903 79320213 312467933 914077466 236216722 459547124 742288908 410810468 950224064 477227858 180958737 808943269 584685759 50432469 922414749 546999229 27789446 998317493 382897041 518239712 548676483 151448770 816296581 326226452 502465558 740298971 332495682 374219958 967647764 378846840 501063240 434549238 709609796 203403553 527607625 96521814 329099749 892057076 996149676 145288495 882863911 160446499 933744395 699172651 4193197 28493172 629825973 736629452 583172625 526559935 162818349 819922148 814453600 654440052 747978921 43303195 20181402 726262034 930442131 582433389 997101619 925645745 227757068 981879209 495482517 974456441 721216356 310702579 942331036 545702697 314691747 998003522 653939480 467965329 918386948 124629219 827583566 806041111 641794676 701747188 395632248 601691190 615007255 426344938 28342336 659538683 56811204 315193611 678160713 713985927 315403652 531900149 3858598 458369935 376452119 828146965 355041633 279502815 468694382 208138545 157394166 107924178 485294130 124226527 374833621 791662300 718954300 676995339 962341347 778134785 721583643 530644085 507813625 281626971 636031377 279090225 911661412 65641367 673904662 883366181 436446307 131119992 801331796 445329294 557283501 830706003 560522665 483249531 239664360 90718354 827923112 874038608 71881779 792986674 718786456 665456197 562187421 419771204 461913331 324884197 982005675 286677359 298072040 25999248 99644630 64093548 747608282 920807673 895464459 480276361 667081184 429372072 697991721 655918119 902342467 856119160 849346438 576858684 379819522 840493082 372275307 948250578 7621713 25937297 709584275 436919430 223385621 182359476 701397168 9843722 936795498 851776432 237902566 117069475 388066077 339463299 418282318 607928747 99846451 920280450 978661237 537960464 605567840 734659796 243812826 562299091 256189841 168170484 986977395 15460747 2071139 17406515 623643945 224005856 46247849 349135667 127017047 508101904 96194282 503802733 278303567 713404524 563219424 978520236 875360981 552545244 485470970 739416208 448624546 656846679 807730138 158292236 938345698 539130476 72309208 111256297 890009782 435189437 366364798 183179841 200067763 5175934 693957643 568962820 434046561 781326074 679805424 43643766 718511550 260948750 556981077 34150063 516532664 284037036 367838613 704864538 490190518 646654042 623687869 782146294 623604496 609489329 439740945 947181784 963746194 69492702 910551176 449496103 331921406 821095203 796435275 666477983 752379271 162200663 895424058 739964367 619211094 580438370 556452967 991183771 966016776 568133059 479321752 647483578 539346222 583484170 235787209 122816056 459446731 326417245 154825640 893713654 859578586 124123127 908125976 283571237 710785222 697700261 969362094 304027087 477560048 928381767 756376375 762237774 330921005 946985557 163832368 834032595 213032261 940735831 794281036 432293600 861682037 773278828 129960946 125062862 152171758 308288452 436892093 973305672 582845780 325540902 356843258 474851790 846011455 473557355 493227053 791064116 515420093 280153345 775345036 12335904 350511822 117558377 171268482 376430735 432313831 721449912 933725486 113786448 673037680 931094042 809956065 652468359 741124166 722635339 424567972 704869932 74361913 771278108 759007920 294739338 834139279 938378228 203104755 19425984 941664895 963946316 769900178 373382211 445190071 309482290 164567137 205882202 133542103 616620999 700287341 616135841 405366772 910131137 941841011 786880135 601979670 600519402 997621094 529102799 981395642 554504863 152479213 573295635 441820240 693597265 481952226 508727868 466821310 391827463 714337236 319369995 334121691 816377563 194665862 222453652 480924661 308219768 273340014 387510206 408020556 471110307 527004214 12208836 283658132 338190767 74859839 810665398 740293495 664939271 282154265 82952697 443768337 644438696 896816397 15163331 83949682 100671139 477701779 138546848 151467808 54548896 157833180 657572336 190271634 999639382 38153801 986169190 793349046 867253524 389801201 18341770 375002219 200708668 640204575 678686776 453310472 697188034 676309202 931568927 746435028 672460209 898104636 911485508 412441995 934891430 829581636 940679292 195603423 474593619 853209092 421536245 815096053 639537661 30013259 537357485 322304228 156110847 362736667 792420601 695215162 566168389 224598828 19872768 471579254 927661010 484989288 721351742 659415695 928275002 969182829 662092290 349626219 814913064 317752078 828326383 197615209 416124634 342833618 414776703 679423448 814898592 40941940 266175355 74977661 292217440 980243297 1014404 951342865 256166421 154425917 735037838 338516673 79482699 119198814 136251488 181277612 39397029 396349007 740923413 850666601 292967768 656304975 699509661 935260542 903585197 659760591 51349565 107332586 980405635 436729848 190091275 242919836 775884490 917155363 849419379 41846777 764393481 828661086 715116212 259845722 758162136 690989038 839081572 195683467 628179047 139712967 926274536 215355214 11440630 841706262 577260285 483761878 715671387 459555000 737174322 717230413 85249407 798613696 689368683 568187726 972820193 211503861 729836384 260834923 887672849 121121105 489421339 653677992 376704054 10018947 976893054 89849854 397520265 967306350 417506491 536257241 361326040 975175848 345317338 923677339 790127876 99749116 562774070 313810711 270541699 299621864 108274688 338395670 302389470 66728736 629235643 134827989 444992564 551981065 221640382 792388485 563371702 180312127 207604661 335176650 921707049 320644111 1128225 945220413 997521255 645891325 824952275 495007978 836228830 28360256 893098357 269919442 40644879 377331009 755643137 849987178 953657616 884936736 403095879 309258523 891118347 19216943 461216108 761906880 101787837 972381813 461222758 27551275 945332727 767873580 966261377 410503584 922805025 858825026 616500700 64696151 607582642 925451484 439605485 987294718 551300281 236613583 784037881 213822774 985000279 913432870 964536989 478559761 258754883 217139871 242049608 196860315 480088901 796728621 252496574 323689294 175711675 226409335 574276758 630889883 56919831 738935384 506010045 133047912 726857822 535550301 77025778 994491277 554791338 851766090 847525191 321927510 936311978 954184341 716589222 140764420 604874013 265388009 535613002 505164 561040218 259847333 942643778 753426134 432643788 964641115 572594929 795006655 971078766 298783313 897132945 711497495 688549203 357338115 77812395 612771172 437395232 700345759 268498080 726731038 11829904 816851847 39638052 127072305 944011247 527799251 228604605 238875006 943882144 234481356 973200712 778638681 422058648 322994546 187958389 141412876 922582752 925612024 406066502 67335763 320815638 137957442 662490516 767317471 850450412 47522414 790531722 6267347 872549544 556497224 979705640 476023626 98216867 304006868 286033601 153526223 755949002 578511048 345543037 648704483 171226656 924943 91674840 880225658 129275962 48277575 439318049 731035262 784871617 999507524 368327932 247864651 269828084 653678219 369980384 340524849 828031523 806261975 643942042 749618422 969204789 908010904 614454473 678696785 688973347 362875503 532410463 864984944 55028603 407950516 891534374 704772467 394060766 834323952 575268409 200010990 474276225 472303203 623462534 216241003 246734256 410827135 449038163 737400038 935844167 399994475 597538742 716590671 589451063 158523009 50130460 857527308 829801223 504039888 957201091 609082484 390221136 228850074 788991039 230773844 905177664 809237719 557309433 62020462 95940120 844812977 225461931 981263606 968757166 287415558 505436389 136851475 614442732 948022505 341514124 583660132 959572815 952136481 916715605 829441656 356489832 75666089 526349902 722007124 256645727 50066734 600653910 539040754 742851691 163011988 298277792 612588988 388773211 234618994 56383028 55472917 318583312 927618193 206247278 740242128 867986944 820493168 52172413 99090871 617557429 876494275 782071525 223544581 329395532 240331248 424144126 689658092 902162679 915355281 812381298 905932561 299778939 924737780 520992451 313574155 273439411 736783262 318970307 611455207 732460043 634997956 138757145 102074791 401315589 323780304 226126787 41536446 150578104 387166434 368202383 13303701 836901196 227628364 224115872 167545866 927041151 506072085 971398383 21779692 470784547 150233975 758318536 11638144 589709213 283549282 110466377 670638847 618076520 942734071 292215270 28894997 19003792 223532301 5919976 31732836 186930232 95905455 763795177 347218175 992679956 382700187 565709401 69224687 918638319 961571013 362490364 141540530 881340967 650996946 412039530 70936503 261476652 62574750 781199758 215653603 190791173 286669494 182262056 707686159 297901002 827541214 636067659 129977223 272439083 979527309 109415903 261969548 531555047 478273900 3992096 213679059 702563414 19163099 705376541 808890117 427377120 947122028 403526714 200847933 649611140 173576038 901382574 430568077 507632466 777579331 943205638 730249337 225027057 742851378 124224928 195448442 367475994 788690070 327831345 163675516 446195226 752189061 472453696 95825760 351113812 77205577 198751400 608705403 175231421 627811811 900535322 381811989 520022367 344161923 392335513 878046699 317180886 982282513 518343932 423925934 475930582 204175016 542970735 274907010 438896803 31743253 483116530 969165440 361768087 692813660 867845336 41120308 112354719 890160179 846708554 155330591 210139582 841848454 574633922 699757366 321422217 975650801 448427664 483209313 843179690 987585353 59853912 559869 592296542 282572051 819505298 741379419 5574135 327130635 649036297 352857918 768413530 48794015 732372317 903101025 938501505 571915890 411088769 311211759 734202106 864411353 894731325 15041545 613495398 904186721 456868013 365975620 617735931 872440647 944011200 17741352 598378755 985748734 679199418 729398450 521740379 840789165 727308722 998774738 872179957 688079534 487191573 596024046 305474902 566248977 53416225 841996126 794391320 811619607 587249259 504121581 712208233 272578487 177425497 915418718 815726987 265405980 602598057 69926373 709481810 798175524 477498600 359819690 544031657 614504163 902173436 916973130 479709453 899766558 543893915 937561941 166730768 128371153 332158673 582670289 361855959 453440426 51585150 419817141 244232861 892578955 71013078 925530479 880750126 403108363 860113631 90853471 302309484 334908918 625130230 507300698 782441934 699617481 516460363 976671272 314953180 905102903 257383008 985550597 334170036 709078950 93590413 998216996 730260616 24834738 289936255 162763559 957711390 488519082 782702773 177103273 656273231 363594254 967967234 761514932 18387592 524018967 215521038 749390155 179277900 11682863 261790933 841410530 185300399 422841716 869268006 16756448 790082780 173353018 789686821 924707876 86542225 515070342 602074825 222388861 77552542 521643155 386541919 55085617 473996650 798396753 192773 428535671 965910638 353447137 100466480 717903613 25514935 766113306 15292966 173571170 373682280 289592839 663492485 418278077 830026806 658894951 497287866 181103892 161339370 2525228 790019467 239697638 430931427 500554237 448379534 380104866 346443409 687129779 423545775 671529517 976164091 579480543 971038382 925917536 681418554 123405891 686996382 794045576 343640316 823311445 577723752 487150821 24724482 298078911 882243654 267479339 310849186 842758369 997462600 614227459 226915397 197638990 899129810 395119243 975328746 425646666 840079900 900537554 476705954 25556563 742338481 830816861 52478482 13958293 977192688 346422949 463035124 329282420 749163662 987556759 659707285 689133830 183374867 810167314 688113241 341615510 351128664 240236652 794537011 968844835 116525071 226196718 500801837 603562206 96221243 381838419 470611174 672020400 615010995 436388941 639328015 558615729 509312164 922950656 926211565 470507186 116475148 309290117 58778331 259388340 810641216 793590121 879157444 208796527 119791462 600528171 526862509 826816972 356754684 501843393 18250793 663805803 190784335 969518356 238847459 113524254 90125829 961207167 486996504 104277356 610943380 454500948 400331546 332059919 581050824 381304919 245136846 419072886 835614273 575128129 176996399 560884292 434319602 64463166 469894601 395085007 950389924 904598383 791919166 790909090 538812785 719464553 795985861 802577403 566948681 578803637 930616742 873180238 161214064 687237966 362251967 923789504 717078014 683635238 990651906 972659372 453873758 323420321 558600436 22948898 250282447 76785943 213694000 718476387 821216998 268187735 671568866 273910374 984302858 17853983 271777357 53892951 787653879 173115813 835933765 357016338 52455740 930496529 59101622 718771372 302790845 721176320 278557723 664751339 489868593 216071427 629356807 294867145 268224932 816998430 801504416 238562805 847463671 464221769 580337183 219450705 977348187 913931250 838034513 927810421 696516058 596271225 928874521 167626027 134333134 465615027 316835052 415986161 185046120 720782696 68034899 700257402 38904362 112490965 900685164 88690989 953850989 220847147 518140266 416965796 609979612 662021646 842173969 722104879 590355191 435477270 489925434 358969423 88463506 125095761 528523349 984780091 50982995 976823743 158792418 672539998 812992055 627536085 895753975 754088918 608665613 665030395 51692989 631562487 89399289 953602830 728245747 729787078 681757939 459321567 555912298 868795263 98743110 591357361 455352967 534311952 937409809 420745919 200443588 919724699 860761801 455262644 848596270 591863544 327814581 808897328 261847016 651719472 25260657 846742346 278406055 977393667 33008492 348037129 677020213 61430627 703232361 487031274 753451247 620054775 301887490 273800797 326380359 372262041 614285856 81497672 390096706 117005017 416048772 279110786 525548538 151078775 516309058 626077785 231286301 59752940 514177345 889406477 842375788 527846370 308150972 319043410 723476541 235886007 89394115 730488274 63844858 209636095 709490107 219452841 883271584 615010559 487220442 18748391 84392769 909284147 459713708 45188370 724213122 222931400 546187921 757554593 324167710 189901858 619131964 337171074 74523745 320873816 217961525 360042901 294503341 341893299 363849304 487829038 172137464 550572083 255046228 115808151 560272972 299083530 434613805 104162699 407669062 347548190 157277371 129244861 848074136 281760907 718064169 290849103 160845448 133042719 615527030 382629723 880137326 519686621 209835511 270389102 815740218 799042171 303938515 11203335 497902315 740481251 327574662 918826781 501700633 745580214 539644511 491812502 990793324 285035716 853452289 883823313 706179362 119437205 519069414 550691869 579213709 775477731 720988119 460461631 343130515 285344542 666340725 28541169 971191340 920449511 796502708 94646877 284870632 822360725 55081818 425011110 477402983 469706163 656116869 849766239 426444766 709874815 104092450 111595025 54744473 197757805 961741431 604044474 751409779 904906915 807056537 188717385 291351135 444690554 989255415 614632227 955849187 687106563 832082637 545481633 520353432 754001279 20500914 399364240 58861483 653163238 582159883 589274287 289167455 831307874 426440085 587287604 860341385 689715409 81748959 811078984 149291282 177256518 267313357 77255302 775837305 777852551 274390295 789615488 825237327 355421073 467340487 519674170 25021624 925157904 458856383 471432365 4195056 578210792 636837425 184698181 235282372 621006511 172457765 495761764 720082197 557942320 435722486 684198109 418360665 19181801 532833749 19551097 624174106 685763213 787774533 783755125 994958964 794295940 404695965 393264130 570955675 670590054 18598537 298060228 504938323 576590980 726442889 786140500 888206966 366885471 529160049 480430014 515967858 257168687 530044904 602912004 778929864 54217309 952201705 291191449 913877390 405101577 920983620 96795110 688151022 792251269 10526238 696830152 499148197 805556183 436010349 779398672 954440837 523917371 464918909 355147778 92374771 149147807 15030637 82693334 756040297 65289254 776591027 450233147 260533237 502956454 160648084 935171791 51993785 560906793 572080557 951152296 960011881 925429104 241501805 879333326 24991696 510561387 922075032 569768894 627610955 125577154 958528453 401391337 734471500 398516303 861361889 979923250 828685528 962860450 186973867 690890868 660525066 693418620 962188597 661366010 396172430 909593428 289838441 651146245 516929574 456857813 225556866 179565642 542351145 769427550 68266895 772300913 539632383 27566720 341967347 169537943 828609702 423044996 843468775 731602381 333420848 497337315 402019319 286790294 339147331 994921163 58076801 910578541 516246167 492961441 570899513 473363005 410302588 20371322 369027752 671113703 489810513 147819424 117194920 564332736 575100686 57685011 277941994 985657104 373691067 67524357 821938800 758729619 134341879 800287325 726340883 99643388 589503858 206115381 884177406 416792942 749602418 75872092 203009073 398354689 251998034 955257813 667415807 968458307 185046783 311722326 914708624 32167860 334445178 298440650 592756320 400407368 753709912 355112912 175830462 170804969 666685509 375424825 571289678 35776755 82035068 103874957 135261831 73879734 913683793 542760583 172479542 853317880 786602663 120439957 338605305 236097136 392886650 766682457 449895621 410185804 995903831 944765482 427528801 515113644 108430303 321578132 970498537 709777700 865764680 286992084 235148107 176828222 287125211 724617821 799238349 995333366 217445239 140326485 848581509 429855036 895189005 673026072 830907872 262960246 178546210 608148916 524282908 653308155 446880336 944172140 396631245 322039705 400457924 606343990 62206300 193654287 842821058 4409149 486952579 792636820 589385757 652449887 733866706 303271758 608792511 577018287 26261293 464449244 586304551 19848692 929808204 910226637 794056934 897112617 210019386 593699111 716038689 98578427 23190743 905227745 953329426 338910286 765542998 228991336 717022855 121372600 522502847 417125662 732929378 693115140 887481198 600190422 823703319 34481073 837774226 499582554 235809329 785220721 116416175 427242981 517723853 147870122 59007773 344439466 792937756 880913400 139798662 953420875 202294246 218444969 884072556 600176226 99094274 406978111 931260576 624064251 14274015 407466738 234595276 529895704 723505663 429982508 399170027 681717036 246515062 919450123 807670987 393719201 464369007 507002338 258450578 806335826 826698407 959264952 227572790 73911313 117230576 79797447 476667396 13606178 314045616 225680638 363730458 83249086 346455391 153849728 293176044 835493266 818582541 828473891 208910275 663685437 189436633 511112946 814916921 208181461 286528635 446311084 563291582 31819363 428412603 422944066 653449750 93036130 331162871 168702557 776160729 530592836 283874465 977385941 820438002 13495533 733320639 981451835 140999457 437947190 520178026 319008592 724610681 418428011 114191439 283782796 891415010 462106317 380840753 899796888 366288024 737919506 859382628 660789972 973966762 742003168 641194836 156515282 630625404 528294485 915298044 421405656 827634501 407855746 590879856 789239907 28184466 153232107 345496147 910127519 825689281 820163593 114228833 736533231 108460167 161290952 206318055 961376107 206827371 13067529 367988294 354576477 587955016 311047713 940367732 441461187 638565839 423305048 100290170 515795665 764610818 192661611 300882935 631484524 420516795 848569355 565570715 958946223 669367331 993029724 273164717 601015402 503677499 564367735 615061894 128342942 163288150 184019944 505309716 57744386 275226525 7479600 902487384 331631233 490656394 900598852 836155368 841914554 421417837 784278540 484483437 748753791 292242154 52563429 676435238 510065494 713240697 296920608 729501284 484878587 630701797 366341249 978672396 197977564 184092878 148197056 353080856 1378459 887974183 7691019 89640982 190782352 133182392 843112066 17528743 478604613 646174109 95359930 20853761 172600056 451905989 718406459 748675438 505064732 69566324 590485506 518271435 492053464 970873537 970913792 467307786 546444678 86789401 19766936 347693488 760426293 94630330 398676261 739446616 990112040 73258041 824211314 696164654 429733205 62895356 47519296 482018932 530964455 328662465 231939523 584593152 127861693 779386901 955783717 476541884 106451688 47368158 580381698 328720165 663781681 715140562 28739819 225791437 921844369 73353725 164978147 232578778 354959798 904563263 361292773 994909828 277385348 731324620 389972571 982116506 137732242 982207146 751293352 128452350 601859497 930743350 79112096 384131108 78396489 49197983 585257995 139801495 403949604 574978922 129430309 454169717 866630817 615632620 722207777 658155502 78609242 663967443 844127649 689573320 790272158 29715358 11797568 405313246 434350576 182219808 96092936 410812316 422360710 233513985 522561532 340183173 858827723 525444669 12061840 425160366 452585437 377228707 315629099 620200000 92548623 455193943 486581420 116742393 853368680 496111952 411864802 137637548 790811939 358280923 922583827 693615036 472567597 375498518 469955958 605094821 360446635 238176118 436942009 88524148 557579889 988840513 723634811 744173641 192085899 921050901 522883027 754098140 993688504 960537951 731442119 615508726 327717354 336953061 500403670 397148147 467084487 779503165 47027311 112360775 995509547 653751635 333217655 844363766 17840804 691592679 290738888 663464985 267058165 975479308 104483500 45179744 9156499 843820715 386175590 725379467 77132331 298356734 396330153 590615792 522621210 342408725 725637151 574586617 392253171 531643220 262825443 802066594 602596349 624360179 469842951 874150655 10431666 568552829 29353999 416637364 370626114 849804113 179136372 997627259 354156814 753987876 423661603 496367266 973201197 558409341 223170811 417478026 368678634 690646072 373074003 588823337 723325763 192290564 715559537 139530121 476724332 156000741 881530900 817353287 524584522 560270514 850132714 257174292 419043577 232884888 379420699 246928952 366569799 214695573 446154941 9107210 967804214 192969726 325620317 793803385 849316990 200127225 608653692 172064646 272325384 601363716 451094031 164731335 501507444 846239596 334425599 325994470 734678420 946907607 523222439 789970976 10374383 23843515 260319321 562525383 828460863 528488420 874640601 582266561 481784051 500835058 68306400 212106246 632631726 277099992 67512986 282410533 815289030 574742367 554412841 196554944 773617606 733872545 700183840 857470475 400610540 182377102 213166600 224159569 465618347 970127466 81462750 351034735 507782443 824789581 929781139 442757975 910280900 973416609 709575051 53208719 974809735 268180904 248159263 594445231 228925365 890599924 656457243 380946151 220398917 414704365 220902720 671174262 859498594 838702415 707061443 227106100 864151275 950715305 396509132 125711625 544124914 35580638 341060600 816881523 681939517 586392232 564596184 59680261 173560520 641452560 902893936 307570914 881229633 539477495 449726648 320789830 660229259 984993169 335248414 989231613 470144828 115336933 152768771 427530218 218231838 103150926 439582777 295691906 722490033 898394109 665045643 52471374 797765032 805601396 909247798 459359597 468582760 901557004 237019752 5039631 114720396 373481328 289490888 357335291 765147747 330904352 8725741 659427850 100339568 111738351 989126117 87919785 944100330 817831046 69662128 336468571 215595578 969912543 277886659 925058869 735068543 520116426 556312454 375400545 596501517 759477355 275510998 440480411 751039977 53187770 125837956 588477623 116164943 955723265 626190291 483243545 364608301 690081378 827809278 854819643 90555301 501113423 978288304 646786603 480225935 969468176 992691850 950494474 404391412 325102913 723727264 678478478 142572180 53223760 556699132 273321088 44706913 333339139 872929818 272234047 804005122 915938545 44600682 17030972 706146897 290435844 757706450 511797628 832974557 879917309 292336425 568994841 707725417 564103152 709463997 603818945 298753131 638315971 169919694 522233141 550346894 87310772 395467793 586809804 328165168 952746192 782370093 500158445 721822693 498735229 708361281 757266328 169973746 635919601 748696156 9686238 202202834 45970872 283665412 609892453 968257205 32775730 733901744 560057829 330381052 41192466 616664142 313732781 681428159 208131552 892782014 901148190 267266375 581516664 952546132 71033903 725491348 16639113 771652698 849685992 158796247 951342359 968523404 793369575 532665849 132927994 371699354 420084958 400665107 415904605 154211497 975781906 130906100 290021695 393420498 338717662 82167967 65568757 720703906 327609902 474786505 46770342 330587289 323312389 993225567 271862734 182353067 970229495 315103230 836732348 211147970 283125679 623929209 887485203 554663481 974003306 513627223 769609549 3312994 197878907 585860947 334928691 766676482 839806917 697309658 654751590 233851856 635291972 608522896 260081882 352643833 229774212 433759179 261960533 18832031 587142952 269883927 991853557 902103381 720798053 31400112 102329767 926682533 293857412 818966539 50635184 814283914 937530467 496831565 693402152 751801846 95788277 874949074 453113466 700385101 995074237 822705576 731818470 752034792 102313303 693949969 561831424 483734932 794355184 867158789 380256046 542448912 573193161 109162669 115811117 867351186 136786615 380180457 642599308 81243203 208863654 829750987 937577519 500938942 98786578 248425242 982040525 884754837 599324556 110514384 850736243 690694604 23242811 285163677 356390912 938141788 812278104 274918497 228129447 729651377 371428529 604359093 306781040 778863405 105338407 882073699 589624502 543699875 168503344 774783722 514152106 634740188 84627541 713239291 256481743 615033366 427076021 567485438 354894716 567932287 621798272 766719374 873345629 7074494 454920062 737508857 202929906 931746411 608046214 516912833 47052303 605120402 332521735 736297245 980082010 522496053 664612738 891492984 142875089 43937223 442099981 408827121 789135425 902299057 23640530 817551834 267748816 844480976 218411406 655986746 522444915 200960245 732021778 501742411 386816376 656723300 45156294 912548604 703577086 936087894 457759265 120791151 688078712 897550199 813480498 627342460 261076015 81532264 342279450 614702637 83364797 157055038 459885199 687863616 282454418 24568065 739181915 299079848 415925618 830631726 218185179 58501389 543906804 816021302 864380033 887959879 777219845 734028541 755478099 428779238 858708067 424290395 704317801 71729325 436298787 176844190 89177970 170917651 103409452 878323718 936619568 846516929 450495418 314004040 787700215 731836182 670096347 879723276 528038450 367219878 381609973 423035759 193957855 303032246 221895486 992939394 73203214 50862786 870241347 23704777 802199141 591573240 268912482 793924284 730330015 845544635 830487887 819834697 711383560 547071008 431862163 740646736 651705347 503139188 623902472 721267494 137121412 806116788 116317278 759871251 799132567 876796179 518432922 695592404 457650903 95010168 83124114 63825689 579981303 503792893 151590002 404480520 729450813 303439473 880157241 883255736 957810690 301357527 15870013 244711863 438142771 502198501 698670755 76975237 905246675 708048262 556668648 482384407 162352503 624509528 561291355 302636116 286982344 903026479 403901088 617404827 813136389 614338960 55097390 183044412 225237886 285796663 486964946 248266234 173069850 555180177 982627882 564936847 622202834 838207299 42035243 779689000 552134195 197612705 781514652 883315941 815863008 957100087 830174361 742067291 211308558 435614276 259425552 212751377 206415623 858488890 982917959 947805702 169427111 612989248 266322004 881052969 620298722 742134448 486183075 873549280 397921340 5919897 804642421 878416002 478615631 618832446 816181851 233069021 805112393 808333460 978524607 963670448 116371051 65215176 81356123 691120946 8916363 850374327 331231167 259037066 588659603 48505717 202091983 862022740 747082240 782839751 157166403 849944610 98102883 112870056 144198438 198859001 166340323 389909448 240626264 792953040 424596666 724780040 800555020 447360533 521131700 501817855 748994122 575625767 441605555 419464824 521849454 916655580 512752429 143573234 956963239 619064829 296855980 272603679 189409145 587388358 326521165 838208101 550937660 777192807 220809794 42513504 129914778 347411077 426704208 371940190 587237653 914901177 717357650 646533601 736999038 213132304 405421748 482967585 895788671 871355785 786452472 367456391 837071123 482320794 500827188 100964403 703433736 783631532 953591442 665208184 322707332 53106074 400202192 133470298 159743613 436705334 780318398 158066455 6595391 589514692 906489026 347025051 944742890 556233597 345881175 607947530 132894450 830041870 73627017 240712762 71960989 304596758 732798587 490001462 369724553 267974571 288024033 921246652 567288867 620632790 894654342 67526336 565117232 771719442 611349704 205364967 939992904 456291281 615904535 255077901 407083862 252728311 419396217 462744255 883232794 281538141 417471497 276027074 180642471 818226255 84853363 444782474 29437669 314782735 963916922 718634692 637436432 419312464 943601011 303934156 17399095 103567291 132716487 832089911 228025278 773301613 404182901 221287755 973058524 210151287 795228301 639468162 282833694 209012317 625340342 874180875 644546786 282055320 771488937 41060937 509949661 711033108 156358323 506837842 163292054 124504498 836091703 579662193 863062760 758332871 91982890 829181092 898050180 206085275 955251349 555883038 996484204 818042860 969111831 451686598 137452409 810515560 811291745 174385591 434967511 620078646 716896183 384820926 118519684 741297518 380076405 681212127 96768212 666376348 981464456 731539665 667039984 929226561 856852465 450879357 16869970 213384274 431255366 422578307 555686218 760654007 628512561 614018740 27813500 580218317 27646191 797302937 467338080 720229861 188574673 722065643 932631745 469732547 758676926 271841561 884618559 95495199 976956848 567335365 889938381 578535463 633775666 178673991 532167219 399159803 437974505 500107816 601138061 783413808 133548552 455073704 73219274 658617678 151220442 513546298 795634477 859269202 432916028 211858947 270921936 669965613 895125535 924340062 834469148 183579970 840198923 432592730 212290387 238928876 982704279 907845690 555322630 485541110 951811570 688577524 31531167 344433953 38075485 893092531 167797209 824296609 918201775 980585302 35527746 532006304 346898640 626578926 365327296 500435642 273648702 360347203 883968265 144276352 878788235 791226448 937204777 222240501 983487196 665139907 359908608 218541588 643641708 693832574 583309762 854818376 795606023 249844761 10842997 906939889 340744335 921564765 3883126 332152550 252695931 208329418 509468916 570643694 409071699 708907282 351657844 705872966 660583989 231243932 102739787 275594270 609454163 795986690 756821799 905024796 651778675 163939987 903226759 475422167 338557805 527837906 812409662 731756381 788067249 668914933 561595380 459598253 237737918 786010726 932709541 39262270 705722540 319824198 704823328 458253431 362996899 869348581 909811592 749189172 895841122 938516555 477739223 844906056 164553401 687887539 197313366 863948533 338059535 725068810 138879015 498747509 930612701 930214772 180918971 804812149 731863600 247809480 136575324 509259669 410262827 248279055 9867685 284305897 317441155 379902984 267969284 478508923 100761345 266722983 857826623 347432390 882407172 135273106 56680172 904883004 747205884 332961955 820800503 557379522 987290096 393146473 965110816 752716591 639888377 502655654 926928762 633914320 54310085 325683154 459013358 160919783 664378901 590318743 839905462 316768039 43545662 304967251 483941090 747612986 33427116 495293337 212372950 224378939 555332699 705809584 548067530 175559228 266131036 986543122 988107849 453185218 155294806 130857198 938478770 239495492 80745218 438521255 594287290 811083183 490601646 178607188 892393448 640061157 276059579 576816958 21661464 211478329 624459040 754418020 850007801 309803764 640747748 706870010 497079951 604531412 870610599 83743205 839110065 289028744 248801306 54191681 233435532 69049653 526503298 420685531 189845278 317078516 8730169 512524728 312441788 63192145 928220973 212813452 865108876 527291085 656826720 37010244 715609612 349872990 560588390 943140477 52673161 354871274 522834666 285192714 207519401 944844495 721752361 408352113 704933602 183617374 256545653 29479535 587816704 103787611 562739891 569559920 436776611 592464511 898159837 751347735 457725886 577393910 734333314 570129340 724765466 385237474 513803841 229856233 723429584 239019222 116199761 31872733 40191699 94011227 131249148 828836361 904399716 589010286 942842656 484476565 726014876 858680320 283083693 624312284 26711013 98341237 860677417 401586155 158353537 208329254 738736687 276594182 538199042 750168799 977121003 243781412 212545488 218244961 25451424 389693550 480479911 746730209 323292962 281972164 116173078 466353799 695026524 100978232 914770432 980045808 445654988 852380304 596986143 544603053 248576002 576551880 587366780 752988610 725311525 710927758 108632056 212544552 883998573 241753797 809744839 37295435 671218858 1392130 24049904 600333452 721715900 110995474 351388878 901894848 392529176 64338546 886455954 640903343 210584138 596213205 338738110 367917974 712605805 732588706 474603691 711895973 994118069 636621172 340071684 352118914 218271461 110307736 566769225 394115013 961526745 985186194 646291021 311528314 25274878 759599512 106805689 638350498 974314197 964826133 116058759 204020657 450758260 294084648 901976711 972845329 514476036 60673570 111028189 408982942 674166852 947513356 91620225 991417129 820979716 933428767 647726525 116705013 920820395 754755401 998720691 987447357 607803570 431376815 675046101 774326956 506897447 81925413 851712875 275899107 532207403 38475192 336053008 267795190 641916020 851031077 47341109 969778415 553205196 329710687 753403805 987202890 841461904 14526989 799241951 693567352 978630193 172475145 460682984 669748828 322322615 509176290 543587958 643854545 923166009 714857563 447711902 372279329 224896102 89102826 921740614 661417615 651527935 521168953 611023276 599933903 571090522 641969065 41481437 219401609 164023521 581667274 160842303 464391129 698298513 163104228 276960776 218412498 90385788 605887858 671833540 883172342 192760391 331942562 421018835 385603263 410633388 635689686 920395496 414482714 785739769 160914213 591611019 116469991 42624912 44253914 739001240 626693498 468684133 752414196 968439742 328632861 286885507 591649701 193666817 991328396 784944007 247408340 833827385 119624055 691142947 455585947 20965777 857882371 121563293 222810825 266305288 762425162 86185549 333092448 19380467 825048278 893324322 497324568 137810041 304374570 122620958 837260507 98467862 110362425 294323413 375076423 481551384 118531053 314713587 119980335 363687717 46950049 759038643 409718810 569019059 375402407 872677992 154181571 135303055 891784900 700599032 407061399 817688151 680809391 944260443 536955962 486802432 152471701 697455649 340345346 352115280 863744152 643389417 117794682 173521508 814023243 863363563 49598433 54324012 987655736 654546031 775486376 927396842 571099482 544761684 952347896 132886199 416266147 836443274 591287850 4211454 338726519 382070936 312035916 702190591 604815663 755876631 230925731 145427789 664863128 618675508 19660835 87375185 241477233 750066226 322029561 186612677 421499377 758259686 216224258 750454841 165734974 883757369 234627153 10794129 523297270 238863530 380388525 957429124 321547434 284569801 676501264 223710495 912146270 282188477 752782889 218438977 181396747 659773119 508913115 835326493 678385950 374663837 300134332 801781946 341361142 687973944 120682903 967500150 986097001 875680774 582067178 819384959 368979775 30414737 64112745 927640153 599403958 739806197 189277817 322856027 413015037 381222502 844525494 972242737 464182969 383740072 722700909 185761115 330013314 841533845 253242914 758484909 487680615 802051995 691656716 532172749 627929702 286262075 908324756 746272953 48496629 659074443 898949338 510618430 52245628 505327285 6308656 390761089 321577944 553760374 687892892 817636986 619807450 379824288 103534426 954191988 48586694 205083544 359532120 138578831 43925717 248244440 95717817 669775678 388791987 722537838 831916627 396126154 653943041 855244412 534931761 353425100 208124628 289942454 208546321 414979511 250241332 371858407 509899750 768542796 99613598 823267180 775570263 709686051 793038979 689852599 315237695 36383785 825468359 402240205 725461291 104709916 989909314 358613961 541982687 612054033 509558082 49122135 396727761 204018671 849696008 34915641 96187308 61698290 931014470 119856582 441863887 798957352 134314663 2589798 396740556 251933943 694813255 464353815 130077929 447085461 730576439 707146219 292951714 116288399 848825851 273079176 983723557 54945091 612932363 32311718 900956628 447284069 803917653 612440725 912446407 605282686 180659129 746515636 783146567 746373736 768352396 627638011 974412884 925493971 518910998 385284978 142741024 86839236 718504212 864076727 760463762 254326033 36390710 621885821 506793669 359000038 131580834 109633287 138920582 861838146 193251183 769988529 475474649 696189051 880792619 981690472 91427188 291903926 897004118 311912492 973529154 267341424 491557349 430763669 848759265 519377400 173099712 973598283 987920933 4457458 564721987 557863821 898554003 207015637 450844865 259444907 721979110 649349230 533139964 747472524 997607822 543187547 364166063 747620649 36465196 815080593 43584772 626598928 698667544 104009175 795355166 795650274 801479899 989749320 517809297 22893525 346887349 355883477 926624229 183451698 149511960 24027329 727351830 207849176 993499435 809424931 844725783 552732855 629588040 509813863 284205130 522130262 769411710 936403405 270038793 327196495 382987023 849614569 34705185 78506701 648648435 38431521 243699794 332821012 823733076 844879155 774262736 440601593 301621776 508642220 197448901 288932966 435468346 29896049 900630732 854199512 712346777 143623738 308791928 757847265 978393640 533049618 158757835 889272998 107451028 972734169 153957567 285105505 887203009 487449282 890063809 141157856 486014278 54192853 428964400 152044292 279342828 351858286 488451299 584812612 278507314 586960060 527456416 852395047 583211212 607403843 264656550 493927629 364232224 436482650 349381412 111424103 101074376 688159150 675282367 545932731 304526610 60566205 945401872 368013985 198134915 671331164 142485028 857737352 677345871 706267698 806166266 853631217 330718947 543855419 383619848 478973939 789321052 823398981 69324471 357019318 383239693 869730678 315023586 522632184 642136829 865021380 327154011 681413771 637483622 805055867 58135911 710520277 3311416 720007867 888577597 711667278 13820819 46755320 482152330 671953413 122585425 51100792 430342127 816403228 783130746 988286168 758071170 409116743 216642509 397577096 17669193 66562386 692162878 551090506 30220994 422384024 481246322 287329207 86865502 325423756 439294789 584259514 812685825 964153396 342832196 976733203 798963332 961712040 553367347 231263189 115792179 538792856 856255881 424976104 672047696 2525892 6674671 484318856 340341646 222698113 653451717 326690244 926596758 946861371 617182109 491296256 925439365 508977389 905260478 8130419 222265708 774703530 898268578 592247722 508316879 400508952 248050040 849835523 812768807 162196976 168819875 785760307 10140768 946404480 923762232 679765697 423643995 182952233 970327428 12283784 473989229 744047584 932253317 756173881 49849567 976316337 843672172 824470230 744513644 749977399 480712737 49931320 836033990 888960806 121764542 50712203 23337232 212853954 877334547 742658509 903184485 61402213 348403489 883335250 822367824 597207037 737935519 202039106 649990738 86931851 123243385 407078170 448224608 917440933 560190795 219619879 288075362 158392820 689502442 149059854 570081973 471301047 738151131 309069127 268969642 324255807 280590298 321809821 676292613 807746417 611051861 685390512 114333310 800888903 28287983 337816947 653643843 889546063 240644605 417553326 259095157 884763946 29286412 306956412 526930854 502450958 853611865 168053454 797281 130084165 968325719 26578407 518541218 686252460 320946477 440894431 144350554 798361653 649833013 903514144 682373869 957900133 624681087 804842476 318260659 220709590 280392268 535928532 409211258 528005558 718226323 290336578 493405442 904646471 408614527 246657265 239511680 368270685 191363566 311809391 132045852 360308451 803159028 876235426 96352370 756914774 716503638 440948544 803662613 59651144 31136528 418322773 905410823 341013982 42208464 877072577 828206403 28432211 563278200 570398647 536888628 956244083 704281247 414100288 130690875 676743969 316957201 382023094 360203052 508132305 801050699 574937417 417331409 29237262 444483328 338997373 450904678 246842614 380968854 801012394 165063963 509801913 433175465 614634107 377544598 41830941 554432904 128282736 845564526 409861885 61648051 973551452 582074033 601542853 964428899 254013159 309501535 725351928 582202370 167036429 858765036 587927466 441978286 60151709 185689026 485508615 269718715 306898106 559889596 563759306 644284974 669674334 618887853 375146950 350214466 985172178 352213975 6614369 206596583 271936568 309376628 332744980 211736382 189687041 316732721 912639468 789586974 919044983 770718638 661785356 58988946 754852148 934020351 487296041 235711833 508817833 194243118 806487564 881228389 241910425 893736630 847513364 520349533 993315995 987029257 23868337 542617370 408006043 928381708 4980458 347809069 389490009 547261590 437395160 274903640 353860584 988889076 614820137 735467281 294667825 813175400 132311454 174366722 733579886 111276709 642151053 890133643 472884911 418201941 643837279 594806079 536375128 124125587 487133459 332165730 991229345 107530098 156929722 908353650 770999829 823616628 834596345 788073115 367030547 528949267 825778058 723829057 638620496 787251771 967405499 725441658 488600147 939247566 986353389 303512209 37416696 419583263 570704406 493851781 867376110 33658999 895865152 83312775 445908025 131097748 498684424 682287744 417725872 839154981 819758623 440364168 136489344 154088271 797631948 272253296 46874279 774519851 727079017 616653113 798691450 199778629 603639522 245292443 4178207 671275295 559173177 189746303 833678868 448482732 16540676 835772549 298089126 51819221 452171501 136030591 899677307 503079159 86624049 887558388 202059785 601674595 864045346 757911198 376276252 641815261 540581797 53192428 234557780 551585310 900823221 931337089 367350436 634070098 318476766 631972787 726326740 127244699 193788610 190088973 787647744 702124428 114285464 565273037 355270680 238535598 980474792 180288871 688494942 632863742 963800528 33907456 379418602 284037997 299581698 83526131 962390569 499213919 10691268 234631760 323765338 387639085 748660142 701190488 271018768 60357283 248627695 171953666 109993395 731768450 195550153 261110650 425057023 795215359 773419537 744982428 29301634 38364738 792383664 637665149 956025890 27223272 171625252 762408931 916740758 81129602 980230911 319104968 720195560 522754836 666060903 505501915 689285369 879766679 667775637 240157694 420640509 347472247 334633558 755747785 155575291 806830357 254022797 458784006 6455118 386523718 582118575 862717747 801288742 688148434 303622469 899978499 940662792 463761654 804110446 343661277 359283018 716490722 851212378 538362715 265437080 146836540 412490704 416565709 992869490 689363356 80716969 55680692 781529003 5871118 826624082 101898823 347575276 952534675 485547598 969524465 665521455 350729120 307671730 288749008 697505092 245623197 516851368 410105144 596896335 470737254 308903660 778393902 744422728 413756622 620008530 573029358 366865017 206323480 337241662 210225254 844930052 583547260 285348650 240917176 459163739 52667816 21777700 59298492 875287750 399235644 741531725 304530555 173468640 150611277 546024283 251583669 249820698 55208675 420133399 568062812 82892855 88027514 567163872 412074007 630558158 138960005 868969511 879218368 608340940 397472486 456354033 762414566 855214831 419332984 555473752 612661580 124875340 960752518 273535498 243634792 116200393 246075216 246969800 451947749 726039204 890789517 229727720 852027681 726999530 779629796 390807764 167664816 136605440 477112433 988500617 900832983 354698782 218254919 270965529 835567890 111816912 14244584 919345449 221993358 975436403 944304335 553610868 247281071 60972222 778122470 555217478 678978188 521929782 174357264 441428993 270659950 239096504 768858272 774026140 212813909 777568243 546637024 763281951 651798643 898101739 162900876 660759080 409982638 196045688 194255700 606475369 452953634 423614149 418888285 895728167 783314589 839776209 42616513 377388477 590016802 876254961 186960650 684369687 402597479 466499404 482115259 59268151 306815830 770745182 918512327 250056116 503207311 397778293 970084376 973201718 293895653 309775927 52273161 366012411 696546013 879728410 899015405 840039765 192655666 598646507 259113094 69536554 789910612 297039944 63845006 418538611 130118884 722593318 269253426 445569981 779327289 386572363 920116113 955559851 48421342 596382676 832062529 930454385 458028561 854378929 341838795 901072219 144066630 436107556 707539754 258522948 182131363 494238790 850591312 326875935 712222593 995701890 393927330 376720242 932189169 146163992 319653239 878102486 230243380 538616731 978947228 435454841 489335874 285941364 228377811 240536475 346863685 620275549 52311631 562592788 622798619 496810982 778500409 494277069 54803159 507147763 3739183 463137602 614853439 300679227 204900031 259613447 287748688 666289867 629949937 643389504 366182582 919036290 447905466 790230311 141743701 696826002 503526026 55363977 822910659 835091205 756152767 325164361 186123211 581659446 981034543 228735196 972797419 100589396 821871011 632850380 247792854 817668578 297542742 196453174 417592820 135577146 969401210 479906379 635053277 66457349 701475251 159289554 596694498 510561476 959042458 713356197 168817796 308154955 746712123 816140591 234059770 531013440 928536471 497287669 448972720 471453344 540109091 920264970 707472835 24172347 617306695 35919000 13908357 537440307 274965729 614989918 364980223 444304257 133315519 819727917 167151722 914447472 264094504 210604650 140794549 861446688 200673108 248416400 724469763 683187716 833761519 165969835 663917354 321313381 367513498 171172573 102279988 617236188 190610538 272199644 755907553 318247644 298165863 386290546 644898852 398879270 789153550 989077500 27172002 989402450 981343440 838554604 399344182 87522381 428543889 783593544 764678256 488231637 243219242 185278760 548883985 596937471 270577639 810242107 835529104 453994418 241961737 802920259 362728344 25533225 548753220 62103188 454623624 945866613 564570435 298654105 169530353 278635257 384505888 362121551 501061404 749322988 444422636 594308296 913225602 170479067 633202733 352577962 964279889 385726500 774598234 130033838 95618030 674748539 327883361 908786721 211493997 487529577 869560098 761578086 171061275 742177992 369721074 720429681 998822389 782657608 22664729 173301837 684798510 699344878 522820948 452116888 689247917 765951376 808449107 215734274 606006156 986708570 760344636 927366098 666424730 298225995 406477350 652930656 944909018 808324536 100299679 197171356 914835714 729074121 807089447 418396550 124594173 238900471 88294067 669148339 310602346 978284181 247869995 58888399 970945562 255450692 979383788 625463317 870961301 438348924 104817478 102990553 114294678 571840266 571456766 218167807 788388747 611403148 562931150 905123713 85312534 275282935 241837281 447270636 830362254 720879890 126627927 497914851 325373055 849004280 693605831 406958747 714370086 299208602 665257144 132238430 559338229 497287483 457468710 608065544 461892629 26489586 139097604 215602829 453902559 344443691 654165940 836661105 680234850 207432742 48524432 385163086 837109473 879797879 643529573 389114450 950665810 303706500 341045747 383238334 447366367 904176650 989865838 577049448 585406057 186763929 452514048 619851834 986240000 824825363 700004421 469693104 394705004 284270641 357030349 297154654 317984936 430992382 38933405 645914472 29047905 67943002 234949550 782925065 282181755 919399032 324692589 237733900 748348812 51402336 805842745 456579926 620775007 795364206 554582761 724207194 740852339 264723665 234423875 928517027 786261114 382300173 434307718 393826126 308511962 696902009 982277089 689912205 872612911 860666562 118867449 612259109 785764295 874841958 964746855 620460016 359756836 968888634 625177400 412545884 216512382 420794085 493393771 808577771 928871487 493422178 620853623 241452209 696907653 516371842 581792194 577360345 21516195 612687464 858550059 718367520 939932320 316380683 248179073 37363544 920234678 949062839 422186505 445040615 665366740 111319180 794294268 414991173 550580509 111362558 287043334 561630082 581138791 51587667 426418633 465244861 585770941 375894056 760201816 441696686 631055070 518812653 105446588 997340701 93698747 316251748 981493618 605453672 336669436 642154278 485798891 219966722 928456572 685535518 127991563 822405358 418389193 839528715 935185323 565021768 441472677 834212867 221681944 954513852 181292680 680036331 420595089 787256333 510710811 202915327 904065228 480279184 414198718 388338001 855128689 128548782 894805763 156199745 243637918 956524389 74722096 52555274 789846113 738620872 930169282 735460661 772451905 677339003 410058469 300528164 118785718 399742007 85913084 864259209 696044204 781834572 721730079 764553963 348703749 725518874 269600408 852995880 267374612 121111703 746735461 990636270 569262114 644830156 18733498 980564544 517686764 331911768 21228156 559822327 566492195 273487595 191971526 701935166 514799339 503286988 307889768 111683862 312553052 63629908 178113635 63132368 995210500 849117041 877714286 214376085 14289508 871263780 968368756 945210593 970520430 814982403 836978452 46447108 562856718 851189688 905976864 529435296 564001438 21678463 216925214 495831598 285774447 778519980 718406602 535093625 294249543 753784867 996465810 168489760 48885726 635767262 73447704 618244120 303106400 879448427 733519284 529792553 853604334 517571435 831763184 189017196 692064796 344579349 61773322 660838355 87236724 718888624 91376501 751703457 136508914 689821212 264192856 879647214 793189511 700127562 982144525 352109604 675386775 140547263 118301859 754606981 772047482 551035414 272552797 812528546 926387454 353986171 201351217 426254565 806256099 87897392 429322058 546673416 425388382 182697483 334891399 819344284 684362647 546627574 149367033 740982404 902447403 870237551 908520809 490723447 487225770 702310149 166389967 835968385 805634074 921012705 114267100 594932098 321897330 982766138 781916273 930988717 54031648 799569888 880461350 924899339 431116676 288594098 695871172 42828278 842460274 809156392 427489483 572567198 575179188 201738954 4988909 553416327 604626822 185800886 928501137 246999305 166664472 584330270 101159761 142833871 849066256 291948744 590605692 835475545 775232517 594168716 928209301 160599162 560614661 803073242 680037586 890178778 341917200 241850673 997209246 492772980 860071578 987047849 531435287 646794777 243514381 180891242 269620112 954073836 185144389 529777971 575084816 724317413 386475026 990783956 880492242 764226382 676026297 12634292 272879811 491432265 320889203 637444939 948449800 640570439 882506733 514149033 289959285 647053970 834143943 938319854 819485718 861296580 408532757 765104335 705409450 468314446 21485025 785891352 818335523 493572850 427619494 163780644 522445095 88301898 117715415 40331111 578185362 338873407 880847702 52761829 208184562 797342610 354495229 318364344 23988489 778342230 665379609 461017229 187528015 98014323 609575657 705695271 460972142 420584229 887947044 24813019 867878340 800256892 86473840 745703699 334127588 944443866 220995564 54951628 523254549 923807608 615921575 200572439 640835025 401295584 606150950 785972379 135181640 729590900 424367074 51147537 496757723 815354598 399663047 162282951 242902433 389980094 383597495 420598046 26951397 850256856 926363653 216436748 87427749 736165347 941980923 91260059 980781845 849578723 562132308 244782696 473140250 112571055 582070466 60497701 708127184 827893875 91754601 652820759 710415109 636470576 371451746 13454744 162073531 901413431 364525369 607086998 187727786 656520114 624801392 597833746 204954811 534468379 821875450 347825827 462143886 356421059 595976384 591584241 777772533 456643917 329708064 629504570 926761847 597269552 6868584 31518671 20939214 660850744 532110432 783957912 277866345 36068101 349651645 770664332 456264683 956935306 457374895 87463226 652611754 465102223 501569108 810767940 9873201 467013168 41068866 363713246 844113342 611852381 279479553 390874195 626851268 196620376 341038990 419902336 746176106 183856953 839690202 15363416 231087883 988383597 802071113 88224606 396262325 907058995 446628148 611209262 543379370 771413790 477996903 94579700 118740961 993477270 188393635 332860147 675798405 658383446 245030941 684678143 673614965 191661807 451067645 182798083 77426115 29788484 606843105 257342845 729000501 645779212 949470295 483542269 960680135 384806740 243529062 561284521 478469415 125347066 672494086 655348924 842083384 876208435 328337571 649146115 253336720 567926790 45671070 441434974 19688697 631430350 687764172 783498565 979005171 999982267 146059765 383284032 68727089 742892370 347389270 706728814 29594136 506728169 607748384 361262591 76153411 465072428 555990262 842529210 8771329 474956187 872572019 261301880 460054741 337499657 280690594 968965031 196909045 594387742 461729668 163770056 578469581 737424086 953251470 286936048 581192313 965058305 970481448 994785867 710248270 785024449 312651311 14294165 702868305 279537166 785198963 911962527 291928254 160026677 773626426 225731280 646555267 535405141 855285691 158118561 963128514 934589153 568851876 289238816 664616275 60548897 43165845 718559854 512925759 692385200 603649187 627403585 608141382 710734591 294480342 63496035 697313626 506043857 878291115 325172785 896777506 383614909 320126098 606162716 395627896 221242288 555370096 483803179 94395627 352442984 34051871 437848696 991066942 232759034 380920810 548815534 301302759 823701324 780460306 158955922 414570641 253502107 205294155 765429879 838547354 474710007 517157183 80206280 8053398 456753346 936458 730135938 719717066 129543989 953165244 615516598 990929841 550501595 697674458 800503564 986606971 704744212 111967710 247603515 41767305 276191636 54565298 823025042 775326962 337005793 799628857 234640243 719638786 809689304 453239495 66385618 658037686 341340968 10203299 200411834 419004992 211227093 28853644 694662600 177829769 361129399 57092657 106790574 783656618 95112952 298966200 775684273 571433330 570674074 166906680 471692844 990628580 736143855 175264318 227451659 132092853 482088735 742971724 557016401 56181970 568105381 861624149 832534418 101853144 218641362 81739075 881393529 76447130 453979721 287830130 479590980 113199775 659649153 62010674 451491139 673821602 222582599 762304840 420261468 596588560 799023929 197006957 604175498 111868045 323962699 482630862 261898329 282880367 960559430 644241290 234099308 562545473 660217924 322374968 759149560 680889154 307307318 301397086 67057990 142161892 596198750 501363707 375256629 891381069 471283413 393646078 769623221 651236313 746092294 311155148 38832973 464775830 91283249 301283518 15793045 151671238 863944425 642054816 319156925 539752289 747285655 520005684 905545221 390232464 693197812 412624301 58005827 174598451 216916115 557551412 805437792 239126620 702626389 476580199 628612827 418538194 847072754 869915605 308642372 939389583 937926519 290026371 457858242 223781954 887508162 429086570 41653390 334445518 46506504 977181942 13909366 547588809 280334416 181551752 869566299 981710078 965057014 891653621 317536435 107838188 155046697 918108422 948151047 803814980 203308140 124901366 945222518 834999918 893934361 773904375 437948721 509609221 501610457 306330541 543399421 573760087 457666349 801454001 322592436 566131174 221142505 30942479 31654340 29608681 705758643 398994888 886258094 562729675 407413640 48981329 496163720 542266283 943443512 308415762 227675004 81153243 715920613 821362921 836988231 996692322 790005640 654471588 422841531 804331642 169246572 476794762 45462077 171873298 29133233 120343251 139004231 455518028 959180746 282967083 96363751 935424256 937376767 518249779 434675262 922082872 580090348 481210624 643257091 773727922 747363584 80985754 266835966 385824097 486653695 447876991 565841805 973760236 502007937 470025245 408469026 653797422 298851185 567813211 234734274 753169076 581563278 564855313 716051335 972811074 618049261 656388491 816396832 445378639 489987701 87038986 966894668 987387524 73652833 394928195 437209186 769938752 341518530 788920542 606374861 478668567 317092347 76137208 434234760 722413646 98570051 484644001 679163558 596787041 662104358 542851935 782191308 176406910 154874373 395468970 692175029 985566471 731696785 734194797 920897709 688953364 976329300 920473995 9322775 589780719 899010600 604091480 930494696 725659798 439900349 855670556 640009257 142539068 767371032 799379604 534783096 184027848 879163662 286209649 157010823 922958676 800946125 607284694 330444700 525350831 454593108 815584734 861484560 847348188 717069302 797219859 256071632 473720209 639300828 211557112 97690591 820052665 54761599 232448641 243514834 562139122 451622961 547910806 575721554 518031120 735367573 583106452 696082334 125427608 707008803 637339851 547593222 144833350 316389030 675963649 793956465 858123399 739229629 300373741 205088472 853829888 963538525 154088381 626580169 274615301 812770125 422918545 492396517 153697058 393135784 515993597 170457185 701938838 9311839 736296587 941173641 160198099 691489973 415915319 76583993 753494016 166629057 953294065 811445602 893402231 73864943 283375134 551067787 665224007 320181631 204024600 349060685 705809331 148894981 245483689 106366678 242795184 511035623 947469972 538629735 557266795 795968994 140509708 776736726 972416961 131998342 482375227 906239757 769285318 572419509 538655933 741015433 441856831 534006056 924216354 790660316 686585383 738184170 580273775 872249131 667703598 395769563 462506397 311348656 916489525 885572398 113291801 415759161 518498003 883608299 723868995 212388007 201852627 979775342 59087855 995198832 216635572 607666150 514918631 726662686 826835240 380773847 657017702 914099918 279223957 283328920 336829342 326629810 643463575 582992598 825354035 203126159 734956412 314919183 625943999 424031808 993701574 304494616 275291980 286522673 651471277 943872664 673001693 649926116 655917210 249605258 284037349 468819568 386368685 870835135 916870093 927387645 935938105 859198042 95371379 12230985 490562370 905899346 707221158 214757670 998439942 40793843 440630187 718372089 573821809 985181021 362817211 436068157 927019943 852549380 859550594 929959422 428452478 529450286 328510114 674191711 88673281 62490232 245517870 212298772 283171566 165455698 625777711 21603816 504651577 899614334 323905827 741424185 932087943 93293973 152247416 362871415 706398900 198744450 813138198 889156777 896154189 629325060 100965330 609396711 530272535 481432880 182638076 981351649 813622406 541848558 527571922 339336790 127280199 759593591 752775434 129047966 731222710 552653789 742308172 158370593 453521256 112759171 307401910 439021790 741136291 631584673 712287831 486230245 190076641 897053121 731761332 642036701 122987857 410886981 282008133 747256191 994046038 404453343 111206393 573059352 295224070 900798998 487644590 301385227 665219756 232702920 507655354 37659725 678750534 93207202 934276709 1946344 310572039 316379818 978142316 993281656 406024150 752938678 203066240 935706545 511053774 890025714 111491525 475668439 986273212 785835358 342506835 205934404 17581732 120569422 523601593 88549861 391849789 858333928 751542133 373288381 580293744 590103465 440639613 520014178 800522716 959844577 200415417 884996219 493700181 341880114 133949830 923253320 712393825 280504341 557989172 492828698 867347642 365074005 482088329 31270358 918492367 450198673 303135293 32159862 166348610 241990078 421663100 391263880 629664875 489719715 613373543 51360941 352586451 202390876 670576531 206564379 653499834 61419480 80358280 831638812 954929043 435151451 106029379 573752205 366857858 691069181 660383924 93408608 44309221 383664936 52496705 708273434 840289736 54483485 820637249 375259733 44609391 627285872 103394178 623834175 512099792 616162696 4873668 183928346 686946070 609084960 889538876 14926266 981344800 329053385 612454418 666352138 618569471 539561318 368064227 351004039 403116923 868574894 855162175 321592003 751928207 535009453 668317228 5205731 659160553 62429507 916196513 314521122 61552747 193925795 323581964 400800332 892963501 746478038 86147789 33470275 701299832 549379382 282770616 250156926 918897228 299639539 233722775 952667269 455122907 267136913 167906726 911593846 191569036 686801000 86569493 53651843 646082553 682523171 616520586 304668274 42018417 159916354 537494684 870940444 130529143 462960280 871395417 288759278 186875968 79629773 121458369 790387051 644651577 473753052 863837000 173575847 445806976 143169942 548139352 916179918 639537510 564505630 181863629 933818011 899654387 914129260 620463223 523278561 830649698 21555402 278293659 664955142 254040224 73935705 922205043 820408963 844629457 584565901 262194089 194012261 415781836 371084461 525224160 234734543 430072218 594301780 529251371 417592438 762458874 350793203 881916564 788171555 759791328 766925388 357001111 236724277 596980722 905300216 655392164 864451100 13436170 951492067 879527072 179900895 61394871 636822731 290211428 109502359 630288059 717922244 864390461 686947058 375081102 766026166 577519722 410277809 196928986 12510429 289071266 749459498 353122813 692232521 195508363 84459462 391239050 322083676 94493508 215826308 440282824 166021199 640834268 51084917 133931057 208799916 376870104 460470334 665604340 295197909 747328689 169728921 493214068 668398460 875681876 105261780 856112071 899806249 291711648 301289040 785130040 157942712 135630827 551490819 86493126 973752536 499690622 268086006 188590755 884798093 477892884 827463624 789092021 184809134 864175455 621278506 979009048 663814247 458883715 129285985 784635289 373649593 891043225 682513352 427178813 716040437 605681198 439661899 430836408 561833285 497227969 346313964 971641335 186879779 570610504 775227969 404480919 600574944 628367275 828717556 171316587 346326814 821354056 299901506 824861945 143441750 327249518 695908221 910718974 208523860 933158114 351925898 879214822 248038326 796192861 908508004 785145684 732731760 232496651 269265303 599894176 271478346 348962317 75186885 424705620 191432800 207421944 265889573 587559599 905197985 533527380 250845183 510114082 302983250 691808799 287015985 87247573 392961928 894631751 483222701 801055011 128230321 166150963 708377848 227896857 896615180 935256635 988284333 232803067 392126508 774444843 298992376 172361408 625290361 15040965 302841628 400132753 717179566 603789115 961262 52630094 378693468 867637945 776509015 788211977 6499686 18505689 414587605 373135240 328935043 224405804 687921146 761251527 195428288 480849080 881611756 407674996 731044347 162528373 90268644 173921138 414846057 457034447 505585327 903704662 284473104 475169063 876286768 701543917 618563918 49140306 416151260 244452276 835107408 459976472 625402428 757092446 791971740 549350582 4339054 257858642 43422600 606426973 744881317 651425835 15238592 171478193 526021285 545905462 443107780 191202378 217902407 325451767 104124263 604845110 968459259 740858532 571878737 440100213 742774337 101276584 160441726 97084028 513819183 289348642 643376062 478414259 556019950 761713763 128257075 51443703 520193853 449483380 909172181 283572504 353880045 782759566 364547825 146423900 275064419 269731231 51748262 781517050 611875097 452028364 922122855 822616736 346840092 564734185 43394172 948406254 48094607 594089731 862936192 8125689 857813031 779069143 514799844 420368329 826945454 369083992 176968299 501072603 221517697 219025708 587429548 890483615 142968594 974899504 188247188 578065147 739866214 592241392 782912737 428454854 247254167 730451504 583878823 124237134 229753939 775453286 86440911 116621779 408714843 600542012 40162707 651538697 26573317 306384147 656012548 759965338 272619451 305977723 571117956 474662562 90238842 41285564 276491084 658211377 778064724 611852113 172468199 659286989 727473646 123723880 168428725 564948973 165808899 165120611 344677737 291306879 358867935 284634713 930046604 250633314 849786852 873896341 678222840 638938093 160247048 938918934 326878045 69154663 199237205 857932558 10262719 164925580 169540200 849096036 560115958 384147470 402157043 834064434 101178924 660366866 618778684 517014343 314205795 278203055 188273563 117325733 963839981 688465011 843799552 786079236 514211314 521395933 339114346 829140302 629253869 159874276 967575153 458273057 602976047 209617774 226419901 838598224 824015195 299986906 964309900 398771042 20954856 241667703 789198896 984802065 923838115 414620938 606355087 197887181 200688426 629502284 346706338 355802935 96648049 422502762 348806134 528404134 955233601 326100611 348233774 280565669 525574068 381754158 421243262 6192499 773211579 208622065 921284146 436456065 871812248 76068299 430639141 140515576 283007076 414425259 247605066 227358513 168343690 694358518 658416167 836630586 530447946 385596165 420783189 565556824 183704887 130575780 318638337 113903999 498542521 393538197 486416750 68768732 386810252 40175627 342653297 292056652 262587967 691670575 992319988 10324194 502316471 801229215 557648243 963193701 816349865 976790506 506291842 746173903 798072611 488039445 11835972 73299663 822540035 926937881 102302965 653600328 682573950 721720930 915451490 3331536 900557979 890969681 63257196 975086386 835035574 392631996 240992137 258632428 895136254 517615465 292855619 356686514 831617526 351707286 99674807 344643049 254093559 572446068 621186326 318855213 623323053 20390055 814026279 13392331 867219606 510255816 644185795 862774855 437111943 664005859 199469912 43891928 106137382 933530361 746774631 153664231 707922288 665128575 182426375 410684564 506657845 896758494 128527199 858911025 524270743 517679601 774260527 311576004 97075855 400267914 401493064 852932489 205668712 274819820 343585039 368305774 772983874 896888658 895704318 847912854 724101776 650730599 961344291 308773847 264672410 666999245 525522592 334834748 242247164 871207062 485453097 525918851 641820197 41027534 327020937 230034335 305594585 73638639 950037533 370242103 635814576 27600490 762420055 66951974 123557781 528156709 175830588 337864185 507765575 634938872 922862311 958983028 487905243 457929775 16407812 470262797 914004536 677168139 112394837 302374511 142298777 406798913 883555633 92665337 32219407 981084537 820928256 147360573 842744317 878894288 403017408 835724417 20078234 231532630 175546243 33257537 220455282 598565777 307933935 938175915 921875173 856932857 276834748 917731617 16813479 100473722 593829434 594083003 255337790 216328949 477086408 227043522 474440840 575788734 931612254 296206902 444725298 72784159 681336580 450500425 762591041 128437972 650764377 427851746 555640205 991422862 241199629 588217372 427237953 240198256 946019942 619939012 66529373 353485461 804759743 55638494 377150772 459993480 390129669 598989088 881899758 694602186 213748537 504199797 109433607 289421647 704259568 476044411 277654734 269536257 6195926 4659974 61858791 357928508 343808038 255819675 830201546 980981072 799555636 525811189 765077314 295593987 323900899 987669124 73075438 535766284 898596655 775425257 535841731 555461017 97532837 118891644 825164424 145039306 494059238 902331590 162629976 641574707 825374504 413217799 705590308 601651038 374519220 24321969 216000815 435740231 593791337 193563370 43283856 511085790 718148408 241953039 461295539 921005448 510646950 206503468 557998040 837270175 615948365 999625604 14167187 761667821 984152667 198670351 832777546 79827509 100128017 210258679 655948986 909156779 877495621 597157914 444878707 330590838 203560160 592746635 173246039 976507957 495044449 325039377 433144607 375578999 732102745 198944935 218596054 818634305 179611629 647000826 240314972 907986061 148571479 66259694 333918436 578742469 45417829 56264474 194240118 896646220 11802873 635442759 27980910 240971765 821788551 422010356 267844603 528350346 713114010 513829077 909692065 493462342 18566479 303648080 441863863 180047963 92446423 789451774 20889066 386640238 780878586 661340720 806357432 206580758 903415695 252719720 23359990 151621728 670735877 503100635 154401099 178963278 966244830 116438518 341593522 458667347 546666286 424867542 240112892 700519640 609295136 512531918 57588044 727621819 223569009 458246373 21136281 621786315 430442995 679831637 452230191 966440525 394640140 909055246 323195694 278033530 746075700 441867056 791630090 699411710 694883707 62021781 945236233 847207035 882822400 897173317 753366984 295749892 512812923 176581119 532802487 226465442 307653812 431418039 160322456 350279635 940843529 432474386 204410628 735110150 266705132 316765931 897648358 153006112 469477731 978347218 618926077 416616186 361734791 110210184 130663262 789599712 93291269 416334725 321970417 729928979 504645536 488078706 706137071 699595848 516937133 599828143 486004586 941723944 200863125 231632078 771642565 371142606 943634774 95835926 274989112 74915660 526333187 332967169 291731789 142196262 10490687 880259774 334851942 8917716 318128582 594480560 924644404 157898821 235008485 183951084 246549569 244039255 932532989 225307071 699422568 13227104 17727748 160028710 436039511 464590248 84299523 948692821 153846292 411170796 157677977 788022833 330635381 417249757 495751542 205058517 210383014 975664543 132569569 441304593 325352615 255570251 892906291 589911014 300822220 41205613 927183194 111250443 758513211 1233286 166511191 613308779 475943281 258627723 407582400 738082725 328199358 657387876 151975999 378925451 289017028 971517294 331009552 518937507 625517820 458374394 404124551 994919081 288286257 398293963 973139592 452956171 412084482 396162972 536115725 321295468 160016484 934179992 357997732 21065249 742819358 674121696 645806830 532729271 627241292 828619785 305424417 352476267 994740445 177229211 942148231 225667248 96353813 995309971 634487805 509490861 128792331 824480225 210867829 395034300 466430764 118165995 541020276 862703597 842595766 599405832 825600405 21685377 632429118 831205638 271308036 773335151 741971243 221211301 463746051 683021282 265579576 19958298 702789224 110965176 791726838 254846861 339272989 134006789 432862023 732551067 171316383 931851406 89210341 277219796 266011008 902501199 569865433 644413758 359189734 595438837 708890116 887938256 297373449 973288293 267995033 822682616 950250424 261912627 607237793 959130390 353963733 61208364 293925750 920139263 921003732 871810253 818276936 432754810 38752576 599261897 381479835 556196038 956885303 338157702 806709447 986756115 288122345 178928032 844164215 156707588 362465052 973198437 381940522 84845107 484480427 676133976 106228661 427985069 125533186 40467119 581646784 397126258 809786532 719046357 233619012 220398838 88391334 602513640 722732051 840623523 34273841 325305916 176453712 811990101 330384643 517371862 331701491 127779292 189477615 748096753 509079878 772755582 276931672 651030909 445759594 497725042 712109242 344227483 573113811 100756581 989788450 859517218 812006344 589194745 576023728 936275485 919482340 527649858 86907164 145608011 651036568 542957639 712270127 53211550 951238310 384768903 352242501 349120444 88426407 364056689 859052498 806598273 699049607 508786410 97014234 964435835 590799620 739564235 192805238 503862637 954990386 782407265 476146262 661729997 905228281 423832300 647226938 278774341 65660821 572483360 604214648 341171509 644347414 658702758 854766970 404957743 524672990 999030684 696600380 975097210 837575205 831920401 63006674 222487441 673060728 306309514 14170336 437090209 68048438 59091584 559752480 589810190 716053778 822612448 146944224 369618670 796188052 516392073 620281985 646169740 658235032 121583825 215000825 777553895 362355917 881260801 462977618 376436016 993113398 423992276 935159337 227775568 420767149 626323708 2617904 199187807 974808411 417726365 229598892 574504238 848777026 625944784 993621239 439077310 171692723 997102114 418074623 655783623 904526808 898357266 818310853 259194418 634651179 359574678 994367712 765654687 99451645 165436823 346183415 542402016 266829808 814831472 842733386 906365308 392941437 645129587 503708202 959597357 521438064 563251812 538258557 638095202 311844198 885126396 10146363 346869182 495958358 444109927 326570739 865290135 31131141 839788230 1495623 499695224 915977104 447720366 892608619 343946399 424578534 603292840 764841130 487723392 471725388 522740655 425911265 946709056 110622423 377665973 376014082 586849850 585340149 746172702 15933843 506626942 174754277 954255426 161846316 634776397 935128634 165768687 55946493 156191902 887342940 228565478 107141189 165844637 877843462 114260826 974685404 601946918 391443657 327115124 453629610 308804942 51568264 801045457 200877357 272110555 211555578 861099778 112713208 275760583 86862636 565537546 203732270 921220289 55319548 711675876 810538507 277089195 270431903 796121595 833943899 791303965 773293339 78287536 855945217 557408225 530936526 854881496 984530802 815403893 73819365 114401595 641483831 919194252 804833510 220256022 665277551 46696845 215466791 73989786 517648458 264584978 821365076 730422635 929830543 237719659 27916525 328388385 604887319 979972633 461258693 336613834 716688719 964176979 479520388 747226726 370937530 181691780 203440934 167209322 899074925 980381386 645590906 655705406 398228626 95752313 369887141 393767615 235883749 652776086 345980060 151476669 17383738 742676317 467507885 758586238 268913397 884711356 260463607 186833722 477090448 36470741 648111853 428798108 262266905 11923328 694436566 821028423 169714609 593549510 390413904 445771343 588951054 468469863 571383241 909844156 729040634 820410453 249777669 69324811 691839953 99080759 335346843 614029740 547244039 720485863 142412408 344891525 649230240 432564724 119941722 17822061 695298486 95651361 845526357 951514546 824980727 214077924 510944082 696543124 282316325 611431656 497099147 312006855 361090708 370459531 206634257 386806517 863223470 589675873 475782982 592893498 171072626 642287023 765502051 388592038 703084017 123114993 192423411 800257471 441751505 276508756 524948822 124827900 601485258 493953084 370147903 976034379 103282987 716482240 754068279 555522956 749042005 621685033 277616664 849382419 870094911 901772151 221430418 748220714 236584177 462927580 886498985 531313804 919048201 761091646 904425781 816787692 433283129 469902009 362304608 370373740 902419142 263975451 216026668 459160870 371912715 283146087 629168875 505451431 470184436 485913427 747276229 102096750 859450500 800625865 58251061 768597874 765383247 295398761 38786444 819394713 336116992 955831302 117986157 775814722 209868245 292350757 336141391 220812476 799143454 833294209 729719039 819256780 541650881 789248138 618315803 880411947 606764473 876228320 841867927 423800582 194588306 462658269 260789820 96894077 307894511 497787145 557586980 521578020 168398853 3361443 736330048 80711812 787821085 953955359 137155282 854636699 430664469 79444386 922719475 431666776 693998304 3815304 316122382 548513568 145537537 380134623 601781859 532616780 75547668 42247657 475220101 630451625 217914438 325616286 421622236 160797686 549125080 704138024 92609060 147610473 369465504 254900837 148944108 194290219 260130183 582084712 891757592 251679447 697182476 425089783 193535584 715403519 936234943 378141199 741339087 110101415 771433159 572963420 3714116 632878024 220248157 845659074 543939572 239893198 360370767 595165655 428682214 902014747 468445310 509759078 574806646 842591874 943747936 701141997 528204754 955152076 282989182 5751327 278824064 388893238 953239799 678834788 782729686 51582961 519591932 464223828 182762625 136065697 318416722 249478720 199425791 213292255 367150035 946658217 335919140 999662519 121678317 793268678 316080025 361597227 932247073 826358787 902168152 619271342 774708613 730147965 772172082 713329065 350734915 262890630 680176457 335410169 571246616 649200935 898298006 608785007 126791381 274948505 950984804 96558927 93234914 231045067 959502803 914710225 199245750 640573664 913849430 432270756 713498720 40756142 54196277 114286950 293358593 386062655 573840140 622199597 334874191 721102163 906465354 805005825 760754708 534183133 775098291 74358623 167240621 82103938 65063903 153225144 113488780 917610781 929857720 219034351 801373367 870726718 714992640 723525855 68090694 802362022 693927881 581238739 879741160 17981644 887859451 133758220 815938911 648936795 522932177 427615039 813846271 418107826 248663644 614268180 547042099 669199458 121035007 637122984 815443193 442391988 488328433 304614668 587738977 352450081 765271230 116103875 231110161 482686167 665318598 271018056 411986372 418025019 723306941 743575942 102833862 316846689 337379625 455664990 37107578 530910614 576294888 953465380 683491028 971362519 404000423 138926626 333918432 428122199 417000555 615417364 518618937 313319421 761577228 569975211 118560658 988151779 486590389 710756874 336471601 29779672 403826022 718376524 592379503 447145183 298585970 17252348 65798969 681359278 226695681 571059611 45108626 801199920 541621903 919580957 126942479 894866948 820247659 173387884 673628761 771669499 638060857 700472804 838722479 291676829 770357617 213534421 530979169 494607781 420047581 593351685 991194710 372467585 314638623 83157035 96024711 864403411 53733417 780886645 763007873 750142450 968832195 578452227 812320487 601740650 27585288 876694377 358532846 717116024 43113705 748836145 611121376 113361038 945027240 85150807 460648858 662650069 610599775 331210699 14112269 28136102 269953399 867000307 40050624 525875216 653459249 53510950 287917900 733616214 978100001 668471858 396422367 906509422 155361453 870071510 78417594 728007554 901219986 653676105 387546035 324772211 746582880 745751985 246702004 674831697 497746425 992586413 883751482 36134372 496393750 781380044 786051798 555229223 217095874 610001172 149210543 894527431 300264668 993447036 392919551 772910504 378698650 638379121 872314514 741067872 865961217 42296405 267289674 124347066 917645934 899048187 408944285 923386933 302862608 604960045 499377173 352132995 835730539 918901798 415239887 549769482 414088406 27658264 362236669 156720486 810425342 685072552 217926500 189253093 484267873 654632301 448139231 879496457 804826836 22511220 632117722 732470026 657398014 165826239 610943703 214504018 482963930 974436545 860582637 520272895 682561849 113991908 81080131 406684260 955669310 461954563 787269786 451914120 340098784 379698160 495719873 251497381 195614827 173165551 817325598 321763242 286834687 514278713 25742892 539073978 419792911 416943483 774345207 413543339 614268900 688580948 526196642 941699976 713625112 437338842 460222433 15386640 120154395 619196438 49399935 106515764 837903282 173567875 634834138 28408476 624138611 592837779 879707746 602688035 530402121 172153386 577989917 726483031 816294390 677357345 943709734 920958202 744162956 503893700 794443817 528383364 767632115 324425556 159186921 929834910 598848103 121977478 47612603 989712296 239215607 627095555 31585544 317184820 313321735 283724774 752495823 585957256 653244367 342993729 68245024 193686560 954334169 579838616 259355554 624525099 226363015 680902756 375491342 323637257 83839370 178584465 413251505 482907603 549789036 355591680 191714542 692890579 100658696 298480390 435608762 191146503 651608332 804993003 933043230 717890467 934511230 362385004 813019065 59824012 814398260 264994618 44074044 805579485 433756506 859503737 246365419 427480934 730666736 600197186 529136163 922209832 558618186 736976673 451531214 131665882 364164238 757623447 969661936 661452135 296725049 939628441 138662686 77622894 929963931 549191439 569899778 672293825 979458902 208485462 784389337 525390310 348078307 889373119 308644852 193276313 921970956 941029133 718903354 240009288 755845235 877175803 112787109 821953173 169022986 615780020 97113537 880087256 909926297 616278105 720905776 407174555 448764988 262988159 187790120 702518300 975165666 130206382 934295795 830597326 19583183 227333859 967512942 722384344 1738266 654473230 840457866 267933588 803816496 27113877 518729423 522443537 966619215 213603024 563957716 659030162 210826764 61048203 45778120 773789197 865459662 177156743 378226412 739213229 942298448 474001912 314314775 153223249 123509795 804841480 885694769 649045514 881260585 5059923 483145912 111185569 397977115 233725801 200137022 468017678 435147269 915003216 854621672 850689794 263125445 338606592 329135345 263573854 981528463 464149220 818104357 661695674 830033515 63153759 962025830 418589919 284258486 698604101 365314859 827031629 481050269 62324830 370987260 387006646 613377701 889979110 640712183 835738497 262890534 237725456 68162894 250871880 409050571 467071870 662842567 748159322 957233683 100417739 559475002 162484794 64713683 703760897 89878807 611946014 415832754 993856291 593650397 419429489 741751212 464482725 971860388 269232465 473963920 161512686 702721940 567727633 657346946 786695901 9141868 302008248 659560313 261601857 210746876 475210625 713879234 302834016 152880811 819580761 323665019 321270897 283723250 335906405 396888601 162773026 704321758 403118969 315269091 27094546 811831442 823814049 696392564 340234584 39774915 528833692 453761597 711775994 606872122 940151644 755912704 64067191 471140182 84542087 910894422 337318462 827150983 791764217 945242666 938407988 703625428 273789504 111946300 968090675 570329686 969800478 302062496 475210373 477950139 595466251 262850876 855338093 882481604 928138673 131818829 521180830 557071815 686623598 292842466 795000770 951802413 23138773 142749024 783471860 39728629 729095981 313978108 94635590 890363439 186060272 568593220 410742588 338311298 797836622 612147863 586782031 364733352 633032104 732425640 142726252 792194540 177904917 942206975 756178802 245296562 357617632 198637688 548356280 466161648 11443463 949034945 141547140 157279917 478855358 906520288 535977876 581395337 532047594 816767404 505363865 854775861 89164199 826593103 720467896 285943030 984262083 472349386 658811655 646336294 215839552 214059889 877485334 483615155 663351766 578561387 87290979 737073055 131969902 452160563 699392740 640613502 127891624 631503642 262793858 771304187 821800790 540836290 326823832 212026707 914881791 863488676 452886392 246637016 760173405 41483659 465778406 231182191 485107935 929183767 545598619 741245458 865291560 197576764 281921987 196903760 681488782 625217728 814798463 749368520 850721692 211258304 128117860 226173617 832439696 974806827 685843195 821259861 521330397 692152133 252298815 812456082 645301418 145760038 72372002 626914392 886857298 272674105 581757448 920960301 159287267 439408574 49065801 88762796 764357279 933031752 688166836 444424705 303674749 255998783 106144519 611219055 764917160 681614430 724249720 964327370 891741439 441024822 877576495 274142205 977029780 475627178 223936713 887800454 311747885 253058673 634846679 251656949 178765766 788435864 943515229 583691121 382365709 382273789 306322515 354676018 132753637 681363413 557900839 119504136 440778468 762788902 718372666 942618579 610214100 200989006 608834142 587544840 967821877 107852922 559193182 778193203 619731386 238087984 335365750 692525679 158547400 969475014 371900119 344887024 577385722 224553960 525235493 772105081 418101407 954428182 971782904 841910246 285919546 53600035 90079326 725296036 823415041 196210359 832624215 751926324 569521760 870447054 249123672 8162732 511902323 615475255 688124873 838703925 482848655 667791894 41757319 566125966 301615545 977519715 161193315 418806663 129153837 960505193 788180384 926179463 517612249 143153479 314931321 19909383 985057503 753487474 32357785 393653013 668520215 619447857 521365921 373255378 966897546 949984544 592770213 377992436 384965368 255650222 235360431 254139205 993362259 463999135 431159355 282360098 877265474 596575626 24565433 622004732 56414111 156986203 170855695 106899931 112552953 670978771 67690516 864491478 702203155 390025987 208981782 98929308 566195811 259025365 222530133 360797422 369383828 325837955 264663430 472134178 910979844 472367646 456302160 46680738 647708231 911028744 610040530 549737067 534185122 271571578 379375131 604408719 919372688 944690943 260995249 544127667 643415873 479015159 908151563 52479889 314942230 161352213 895921175 376746359 755800614 142469858 862067125 919742407 885902269 720215864 154252601 574741109 718005207 952440519 512322541 913414796 463495081 866898835 703757196 221553321 652154393 475353203 846637769 705204606 932314689 909561748 595756486 774401105 596939760 426310901 262752925 841785210 925263400 276792553 524729307 722802920 32377761 925501080 334110464 956371613 44032325 549091965 348162816 32158510 870363314 744716521 812416709 393096772 504142523 243991679 731997098 520993053 272707559 448022198 786789889 118781195 51131121 556952154 989473167 79730164 156047686 783730188 498942987 635431632 251776394 95999677 966679970 1610287 763042323 498062903 832018294 123012784 159701868 331387796 843159066 247760779 220730580 706508229 964990488 995258120 502048957 381533196 674636395 500943622 178651469 489790594 344047877 341465973 99122400 687805074 768017226 55045340 321608836 152960380 843076243 86697172 336479355 210849491 797941421 360809098 263107261 133593855 808513111 954611521 648131955 86992316 712858567 236596942 342858621 82578073 403936038 343757338 912293613 211708794 657213711 164541860 535785866 223977239 40918292 968074236 129910606 937243515 456908857 317858377 791066344 895000709 823741303 79230660 626946619 14225002 568650298 573627195 257800413 213169201 483579620 822689167 908146841 461521461 775505736 819678774 441968622 710828199 715221295 675282106 550867085 732177930 946878167 474253879 150784478 285751733 837619566 383904225 201923452 230582869 685447067 634013564 636994996 730101352 8281590 616171490 975050763 852709570 656513931 399413121 388551605 680282892 132710492 31243994 374302750 998695488 561233372 398278403 63300965 383758639 499187060 942230054 123828956 367122171 861590785 187998208 178305418 25941405 197528916 960807523 502691497 862148192 410527409 778597812 120338984 715516516 742596945 880100717 427195689 344705308 392166368 531091612 789188740 61463248 130511871 468210275 826326339 545002780 525470403 9017462 803058468 215950703 695630132 907170720 975498522 574439821 3181263 178255934 9477068 28324878 530443269 824499394 869035029 461386972 634878138 826498097 118304130 185599929 911765190 978442918 678293207 638567607 782609527 915026893 37554315 308525758 779175693 218372456 919092551 917079561 804701501 456396750 186281066 922059433 716966831 560275559 837264520 477660417 900201856 808420401 434263014 173796424 934439105 714991678 799275776 36422410 821291253 297734708 717943556 679849895 53757847 651210443 983119444 100118739 736604306 538190931 956759816 555853844 371667143 416400683 864470890 492268103 961063563 415199819 477824120 394911260 83346470 228842939 714974821 877179541 981280853 241363225 288320280 22979467 663234248 289610776 808617643 454785577 446052517 124431611 249047533 757362543 172782339 483710238 454523105 991391920 807693680 224369518 961804605 272682004 805063788 904954091 775408876 605130007 672715243 766992685 661155468 862373128 130686423 324959452 929700849 77105547 182712460 310202423 416800416 895453976 122344795 93390734 878537301 48283513 432754439 384577992 502927741 345486416 936463434 933356254 289331133 58109839 870329425 415305310 850286185 539514877 709133116 162144233 757224717 648104888 172922016 401534901 747383784 211153070 49825796 419760907 499545708 162841890 51971431 913346762 340789696 566919214 602794424 196841442 75499838 968089147 130854749 459411930 404949749 9530250 842898605 206738764 482647591 167758510 36739190 802097763 484656588 95856400 185313911 624888163 167337742 632829802 181166055 259818274 135501259 838157901 476449773 95647623 233748247 971651739 6108709 729495570 636313527 854002701 66657057 741213268 429996710 788103086 845005542 392380530 328833428 150168157 820373355 587429286 897991010 787992912 64312093 561600702 388000423 627173004 28684638 15893147 426656814 331468141 567289601 445508276 582142838 369296165 84026576 846701456 556188976 910466869 348787719 952839503 920732101 331004917 536090838 766678562 446188494 852512018 752740578 121838799 528445082 214401546 508008388 187407662 291623595 874489010 241720712 652184750 715233337 626728369 198203696 172591313 149149613 643096834 472130863 206224299 534715431 136921718 458154991 249969255 679328250 676674095 415088203 962871234 490560810 959897383 458271253 37500558 965879797 202737575 648937617 970170929 872707399 562733008 755439864 960317731 807817028 852805653 221435127 385772403 320703938 582511551 7932717 748925763 532621516 58622312 756534192 996160327 952920352 307195776 306549385 291008331 31822514 941244108 492139059 814326954 735119655 766397153 814520864 829544663 663098971 580319405 44881204 254922200 937235163 494233839 148725832 172990149 398184044 664130234 676267688 413570126 257568386 75293174 427951766 734254899 759151306 699061727 687819717 103652041 635857312 748013956 536469982 250746748 943450265 473558089 884975358 707545927 667674363 181022822 491267638 206182973 197015104 368927077 625289226 104519940 814560407 349939367 409991411 592542037 62647139 400339936 955917789 872974974 146384826 584107927 375617705 955687392 960741607 839204775 882324652 695721840 613899496 522131905 950088494 174746682 442123504 245146088 967332333 233152729 964284390 25199347 678116759 671125505 297958629 211278606 899652691 674403062 169616826 297176121 903753273 784055826 147646825 258750152 99355093 128047427 839294121 4920289 895356072 505989258 494112355 455995393 703818151 823459965 76276278 953656183 332462522 171636421 714642678 855506152 681668670 588119713 470843177 406097353 518713220 848364898 760051081 178335976 388395856 601498349 470574468 773113572 705446234 308223036 687145407 634555568 361203152 131551197 738906255 141557780 605687762 291107953 1867390 652158508 780026869 365647150 282086604 922606055 956487873 576862302 872075756 523757193 340182323 313980382 330798082 268571689 784198972 770131360 811648876 159040052 233545791 111277097 41311542 159131112 763959703 872292627 531510180 429291738 534152975 30745996 486581932 278603633 444854632 638567638 467635833 470929256 344697558 537592005 383327721 685257808 861286275 630441028 531636496 165263883 14873611 813884368 527454643 779900242 389395455 762932731 678325710 5405233 190847586 927485931 343463439 859493510 369685551 948324312 353767000 982988933 169835216 459518353 762180673 587977014 671629480 300247800 386311571 613140725 447104907 377992833 201228494 944535538 166744385 706101687 737831844 269697711 584707591 51027896 407586172 886860421 901454605 909353396 267865584 872546335 579703032 638019441 841493839 580715516 712056930 784937930 2654492 243434737 757515861 962798891 12125324 341468325 660649684 290355735 764967692 121792020 121776467 59830179 13126842 600446477 247347514 679007736 427735783 10800564 953339493 934660308 712750235 580231936 529371558 803933193 824242449 418000190 901371714 755900413 824970294 719380364 632019312 365723177 938524974 427461471 503270622 370652570 739049680 46452990 959579435 821927795 847766565 185614340 788413806 922861417 360435436 253750754 185917614 930728005 67713561 924994650 243007591 54665830 117961298 192169989 74333451 276794940 107031665 882936526 897982591 304804558 46451717 622809717 950879386 183880245 28096464 135981838 994061225 16600607 275052106 590643071 903955182 107144269 447105564 181871109 102549276 541379349 239559335 568925871 632897757 415966176 624277115 621624802 142419788 527343533 448901600 684808915 253982331 332405133 414784848 669912592 155672047 324132133 831199738 931693048 596690207 817677615 944202305 385558846 58869240 656456185 525710395 966229354 453808476 343538660 807726131 737233751 234343838 234555878 929443624 546133942 155536135 246922249 285162316 771598730 214238293 869188074 444764805 749071531 147182391 118460730 180531951 399983171 943943378 591338049 803050839 689508179 538097727 15123030 309737410 507420975 440303882 983119976 844257764 468859902 938672564 671587192 743814570 42954555 695142963 704553244 188516273 829959223 646434925 282172926 530219468 896576148 749435072 2956891 174918017 667257035 123280509 571188869 259378317 416027303 918839912 14917985 615694684 246465480 476559674 797597418 654203793 198614050 551181855 488176300 880151684 388643451 144870713 593578057 98183615 772024560 200183835 342897656 631500161 885859184 943600718 744171777 388198203 983694911 303466447 452644418 478158357 752006773 907553167 438460589 934691178 393641597 827624434 273272776 257936711 123669142 474680657 311317035 486860528 892840277 262739576 363540486 878378332 458906145 519408936 406656408 668758964 990306230 86592150 102686649 611806680 298357923 412837354 413127249 451285721 409440204 556653761 473066206 544181120 989240040 180235692 329130738 25208518 939983108 765735599 307729587 419212890 996008190 928335298 120493402 337622302 146360330 69772116 437482932 962187690 315492401 853224131 728641188 797921992 341545165 844970724 464806303 827924982 404877071 278854274 61621038 103271911 513700473 160388311 639835504 466428162 996258148 421429780 271859349 298466 540300156 592525279 814675812 296802260 58267710 509552592 468241846 101075804 701195649 928553459 180830456 433904304 621934570 675490121 919019693 23610939 250457462 727809606 196546794 301331740 346544628 51891028 70601945 458772388 440170888 411617615 240775990 299898844 310967082 670419976 480028373 79536636 1006885 378628290 705441562 819130101 711546264 435112632 630612607 737221865 54531320 953164181 338366226 346604461 133751436 644911098 948552436 499338574 541907696 235885563 726378715 237177481 771934867 988986786 10734736 945106769 678776889 994496363 283495282 568809292 199619449 740863687 730074866 676071511 240445759 640324249 858136853 428879614 264117324 373279675 171474165 550101765 144991665 93124474 115519296 379798498 223139160 700893718 930227895 625711423 343003771 771861316 707636401 337833853 234677803 261788844 568424341 273154092 467392458 669935722 68173155 463602324 174727057 690278289 281288748 685727792 464108299 207516835 481130645 577161518 449408920 437013530 807532121 363994864 206466283 213561059 684122308 502105229 958332812 14030046 939159352 969384784 143972695 961878879 938927020 763615032 11678204 420834736 151265576 384107383 653331837 377611661 505165386 414884084 123996338 709518758 303854020 197606601 218732488 643990048 126716635 420147397 210330814 241952020 852738538 176846314 266984935 824673551 243458781 666446064 643360362 942337425 793317814 439327425 800290501 858423182 437914380 55841531 54508358 799582192 579971207 709271153 49878673 270189586 732093797 634221994 24060445 722425926 399125240 166140768 612712630 228979281 989202214 224367363 108181244 889078250 133018856 206303540 634654691 830782782 407910091 401923146 257761586 667192175 68361074 441998032 686948868 443290896 880866321 937274373 163465545 763558059 867665652 307229274 774120518 364597051 352503286 613653496 652436753 255722162 682993419 37342008 871259414 62878324 886941878 292920616 326626197 161902042 851290771 428664845 72947745 669243569 86627279 749753819 225919266 759086008 298976170 517383359 351390804 98307877 191945212 976362902 133897030 923974945 298664878 364382835 862293980 727497799 521763132 56967453 162059982 613531177 95548218 676040590 765298727 534191051 557413580 915518581 310183366 425661478 521773100 859012021 331827680 60999335 595792679 105814244 251780476 653272493 542972832 223308237 58260725 990187278 958654476 462106862 645834364 247681170 525950965 766284283 883004564 705954935 105889912 227963481 859517076 146794988 259385542 942424484 552596265 405656470 73418406 539954729 154165969 873325069 485810418 215801196 222114912 988320352 984508437 795329188 73124735 401417869 187623572 957368122 671917352 756380170 699048322 122531150 694741548 735069759 365528841 942850610 862602157 917972745 213665512 917884652 717821860 528716089 124907248 638860984 426238300 364666131 977869702 652238724 202496501 175015120 204413989 766829171 542502626 25636124 71742937 665637467 452053611 451871640 194688964 295606343 566060076 252684633 304291740 450283509 770091412 894904679 79795243 201082456 33080935 562993983 414205902 193198103 349582141 188093266 553243383 50284557 56235008 240437636 441176748 723007943 367741554 769199021 625849605 996836873 958989989 998205467 446506929 931748169 927752577 435343374 195699826 744537650 701174081 646149179 894298524 71915043 398199286 493026122 170389146 34569646 62966274 102411352 69628009 532352793 751476895 915882358 916362779 798514912 812942934 734920232 659368790 432336945 974184840 282535398 962671827 724342126 810774761 691381918 75152607 608818863 658743807 112104752 337461213 825528381 625153959 407941105 941223105 516682008 195157137 251347753 962553238 950628722 729899455 481192853 422457338 390678322 861332746 352759013 404609949 56045171 102572957 198270527 312471238 917141506 542154360 794839226 588375245 655651299 115328750 580080100 182551714 681298892 614333223 861192765 67304261 461056424 844209823 469514682 699970124 506879509 177964709 637232194 23182944 994941670 111741661 645980724 32848831 520024483 497533375 934948576 428251836 830007300 267025685 301899529 678206523 44808826 572349569 24831850 781290038 474578598 204965365 488333101 807561274 946979296 427407416 707445877 258494442 254023601 159128424 896411350 646235515 787514457 864778099 992135639 834059831 404849482 183843484 169250679 257365242 813564330 571420668 144061093 349255864 797527253 613887999 752189895 913513717 180627162 358788323 571005236 769470027 962291449 345950524 342859706 720353000 606745643 681396851 42409753 305513741 290106266 272400706 24845957 737691024 163848484 50333241 570761512 215925851 368087004 910113853 991581853 329472234 2360457 606094596 41349495 821965521 232964646 836294042 264535480 640073268 317698144 633935070 490249050 420361294 157826075 940903941 919100106 158367210 526224878 386146071 979479399 229886957 5495970 837047149 745023496 730901962 939081142 669973049 415407987 221368844 370565086 555866366 489020135 484603600 148848512 844260372 331650195 411286600 764321077 937480486 296640540 510249785 602738766 277093811 894553371 510748541 86562125 766464400 573075869 247098499 2394727 112121188 140194977 504597450 819925001 390345002 776924317 413891945 145937744 661549235 94129146 163894410 866233487 263381537 293675923 335004650 33373133 152992877 364946234 862566491 930197316 810934755 567304756 196656963 627168228 457586337 240693687 520977691 106632653 727080731 458362227 562205680 305134809 160768666 806301190 285555684 10432271 493650872 775257990 942642606 663159089 703807205 435883516 81164054 299150639 64647910 863656419 30061434 747706546 279820624 18932397 214198861 486353298 825681169 205813054 660120466 663080544 365739752 246001775 880801381 396658397 848305128 648431500 159814002 407684737 697216505 362874071 810886524 488106741 148495959 479606275 63114200 798408857 793864721 18917049 202752239 163830015 257473163 288600342 646207168 237352814 238351868 279968811 149462363 737607008 160282609 474690684 172381543 542759684 419329480 607698050 232412828 538379197 387928886 246946089 674332746 419122336 217106626 182526546 502236625 246724858 317854279 723860818 22616871 424345288 684604278 249699698 705339221 756443454 522779218 771625581 696445690 684452161 779491762 742694132 287488198 803724268 988605378 138745133 744347136 871438607 880087682 129276720 652190465 293330347 56459333 762005385 603054519 475108983 279774772 408691641 229381667 590229598 942716617 506532021 682758363 606717695 797789268 917585765 849349513 176421676 790612858 817815846 131899754 979288939 911748528 428706889 964746191 82366072 679140804 779262098 205145759 925509057 580171861 844765625 523248339 640728553 943248470 390282732 629031161 394538821 503259023 38391883 366344627 826627170 42749212 40856939 90658869 75188349 171556844 148108244 193918153 426851849 38372675 316647043 59823438 629865773 918083384 587171177 228032437 554761283 735510840 182629353 313703043 200918107 263287937 95403358 412505427 504440246 670692520 321363347 415773521 25538635 748215316 451225417 545902527 929632325 832902784 729591989 26065012 371454594 952924541 472258558 483750999 850244374 450280685 31466435 50661865 87568326 749687177 369780116 623486905 828044430 924993373 362578036 74019053 291795995 782095431 403233630 697976767 990318674 946446459 997780413 684868094 237754567 639595777 652422642 225805193 282273095 993396277 374520785 57945304 155264591 411560519 636063012 365153651 601338258 71891385 465898535 776229496 816139382 514654180 903734282 741858073 336374423 955692915 86499187 40788764 202631235 677945573 722513657 840845145 93590269 612182287 943010218 221291072 907107323 972609944 372184965 343246928 835079848 642607996 842103809 742409889 132000034 45438346 873832581 306030427 855684285 399210726 723606765 691571261 358527614 891340679 438529036 775818007 372728224 368844474 297206308 950115920 873185299 469283741 549529967 493613920 921128696 750474149 472243866 355952471 679388966 51521304 422333253 160989525 903916968 212056980 103661188 558182672 904324669 400562310 262484833 317938513 82999255 317628340 329510231 623432822 195247388 175340980 783809240 130617074 851334376 845701746 117101001 650332105 779609801 391674798 333406721 740546325 264161154 559712636 125380045 895694979 508801417 195643586 831797871 47476182 471889800 207792573 689520794 115065187 995283167 822909052 90309880 587144852 296419360 992029027 920220324 1386086 586169234 95379882 70192048 602965994 303315376 866632156 676988321 977969863 299961255 590689369 55620078 326941622 814517211 69619156 328088708 535041797 362807394 881079765 42979909 906863893 364103047 126046007 693937028 74345692 523093065 50969259 542410890 353954916 24861913 765054772 739545109 666838858 563559712 478843049 928305620 3740992 454114102 315984951 395627756 187519115 815493612 761006812 381103222 949282437 478519107 151727597 24254974 532785692 729923827 469383057 181921286 640069201 749018853 806060867 716744833 112003771 965427641 208429652 367449944 360887810 598430017 357246566 364189928 459998820 694925060 467190770 293913730 854497843 574974652 971861187 256271594 217883732 255423192 700546169 667408089 729770177 992751867 35447560 996886395 723328264 399000699 202565430 115466994 689279691 567512291 993537824 760711889 489925182 989976177 262034613 278665377 157133484 460043417 665271353 69100639 177119987 915763840 182994628 987363068 628731395 434282881 416493249 788235996 423130466 438961580 340052591 186606680 526054315 817344066 607488099 660844092 747052298 673553466 972428804 450568777 768978882 49292480 464775182 593802164 162824359 332318640 879588112 536264613 780823972 979906591 317902318 513381305 933295671 410521299 379517535 152944257 424288752 929838790 890891119 922829825 841958134 954830759 620815359 944039474 236442753 52730456 344011584 394294144 683228001 29918577 10062140 456767308 216412789 438431676 900143949 947520619 5671221 962123447 762173092 18210213 253016618 729482005 383248579 961032247 65478000 583034685 802238979 588560977 814145338 374947273 844864527 519671193 630466638 88092681 359448167 39415719 18633861 168126590 898999519 615861895 304486221 166779743 75782173 165530938 575884327 742995223 52530206 693282356 584976169 501248708 901674673 492582367 706182012 234199738 584579066 760772375 79180255 401779966 54455537 921756077 302797602 996010444 815770081 558253797 210502828 149512722 391954665 786554359 430120694 331369458 927333502 690954897 634409486 448190276 988343271 12833619 185441301 941432337 286059968 491492946 601350081 878952217 615019640 233110421 192736476 357390926 488413906 607447451 241466051 778876247 823238760 706790868 229759719 947751950 761006627 482887971 67305807 293316354 57063108 349869667 733401365 639342070 927458143 249657566 938670308 578297952 599744987 718841559 866612097 567399915 549609331 911565314 475782207 501101813 134324535 156855303 913565065 699284242 735411340 467181826 303480668 326904199 149963176 256883206 238006730 551993296 529709591 100806037 998775160 720910362 295102777 977703978 394615328 927788489 899655873 451286191 495630096 495102964 274733879 159181063 974498730 384964580 216521847 491684485 926880226 765299097 61744689 199000691 546579651 569367621 277279847 243714189 603540714 206721742 666808305 602087811 439299849 541568080 650500860 976811386 547352678 372997273 158452103 184446092 664139097 505194668 964538852 149527875 793572817 73802559 85263165 70781218 238761936 205129020 91257357 515036444 498402282 254190659 76226723 96822299 229095370 91923751 148778915 522173818 408219822 855662701 881462404 110032780 872085478 40282320 219273746 995746323 119129432 484616127 588334317 569898697 910416383 903857629 844467209 496264666 171142760 326060417 15496493 883358824 743805235 524882740 459723636 688127238 464603032 171644981 206982094 784060990 878857183 586950904 629315968 202277643 401402855 974551458 514546848 215109983 96467872 826410639 510086298 772204191 341299601 921418445 850837678 294857762 61354834 923796638 299159151 460425653 624094739 459189754 460891717 328857625 853225748 43623179 867235308 396986244 888954411 580365486 509494515 648222236 304452161 861592825 34529086 296333439 330883029 869937071 658677637 182929470 838002551 271986382 510120402 963219037 631115854 309580546 268521991 5921237 786906771 997857839 700500054 48859155 946794516 663850987 38202311 419663734 366854834 948493312 902497973 16090068 459582691 622934255 985280337 737548534 861086256 191538280 773329950 77056279 666741176 223581140 40574579 490315625 251550380 527350987 904489212 298657424 658784465 582693790 341889594 346332452 250496257 146753486 529023742 763426356 773065130 384736402 399110386 851949502 699505997 629366614 45476112 999759672 357575936 620226103 353412136 12293642 378114797 935150727 909909343 211209233 53010641 327125327 660984491 665076766 276128894 500227016 130334552 277747317 440077913 336735201 256820870 190819151 707690460 693360829 848686504 652548440 227787797 477663026 421673734 233667121 202821669 689686602 346823228 890091759 192456131 397006277 918445753 580314778 472537527 712812694 454876225 306941103 866021471 507791202 152306540 510232991 658026029 449713924 637906980 60270926 510287910 896096012 94029867 376976276 832498276 937857083 57645459 839096511 277778582 354615048 642513219 693987856 33990779 726841886 166676857 34441785 535736427 515024604 873132611 90558437 862493646 194899411 467489796 203195440 620876194 773732172 46107638 304143147 845878009 595078592 14572194 317974618 651961720 269031005 112328809 668351285 169311194 668048264 518800895 535787434 509031531 522282325 689000170 375517849 227817358 42013201 382264839 962750551 930821176 229217977 181409798 227468588 866651250 249490816 2123241 955733461 865431514 68282957 272959369 694501378 699233826 976098618 200701969 834694361 377998224 228750102 198824065 877197681 165740925 927895012 920091180 558010712 881635542 230559066 876249914 848805134 845342366 747148131 692534055 415057544 176785002 825358494 990185282 564245934 805687011 17780956 735040303 217540316 866678344 45472677 649605478 844237157 177537769 586397364 403066289 474370059 465339309 748842103 291379634 482885001 780328589 853553808 705583962 525118730 22524183 722140246 103601523 264399022 261045484 708016981 836300824 584147468 309653058 676291017 73642808 887931051 323312738 346213159 177206550 300163207 613796395 115785365 27479243 289360531 404532365 752925549 701207747 590757681 17456399 775223230 249422652 518430907 373170762 72507595 900063434 212966398 755334252 360994698 388346582 428087994 716394422 422497573 656139290 837552163 923837694 125214077 889188646 627535203 227327534 445798818 328798431 222999061 655783619 160801884 417119994 40560332 957719631 664298662 121120901 19544458 208656119 899288621 920568415 134684233 20167669 3899349 225572283 120077686 293120535 970833460 610959521 57513072 236764222 213409301 561791085 265708558 509257184 803575 711726158 638896918 380109703 864479116 78796232 460083399 273835856 697071162 789889843 510958416 636290413 76878237 81339449 643829334 555055779 211820291 957198940 762242418 542848205 562286830 530996590 784921265 718506327 670121878 577889814 731763474 340754883 985674597 399121490 243673356 424465448 96453497 904735728 177558277 285371822 473043493 283734291 654627803 718497555 689280880 422042292 897612127 192283433 427018644 921870111 366656214 360909141 86098816 102740082 239342967 978386450 879472983 303610145 302369007 111008108 469363951 959330933 649052639 126435718 420659283 993363208 289311325 946334996 589883458 689673034 779137647 878617569 555602093 507450367 136231571 272968523 636688188 873295551 299681850 246751426 761319370 604576885 264922696 248397901 260501221 443293665 909628822 179779332 91726415 673530902 66100081 392062359 82013568 944959740 395825688 529927365 573046817 33135567 165236545 154314726 772157586 577336222 372292244 483292002 246239845 960636877 219328559 295322424 37096160 500226195 354230560 847076216 60373375 662724477 268452334 178829001 152801393 288987113 65476369 258749668 601838358 564907916 834323829 22702870 135794311 927408365 69311740 558376642 439092750 533854183 756582648 235297245 913508777 656402475 168747701 411712369 450163851 358700988 910812141 41073178 522992540 43471729 659902802 428323980 8732148 831453558 448583431 313544715 22602084 184865227 979483431 802971889 377330925 616024771 918400573 928421675 579570502 518360967 172273610 978185917 129257818 301140625 303105219 117211194 661238984 505656881 910940688 225842508 133626978 367784715 158774031 135040818 199883950 117910679 961988622 594731325 132759656 186850208 981664468 563296082 539932414 349035718 284532505 13463659 256815890 460647676 742982921 112493334 674127612 880706058 234497477 956547060 907398982 345411340 582463457 729586747 100475694 261989617 602648551 114052661 421931815 27571453 165126867 510522303 385038680 319003463 987674262 6632651 761010715 856255292 478313108 36074974 188420223 271989274 423762981 171589778 738102471 472159606 44293399 989394965 38685929 6461878 67899946 961172393 741835536 424234136 576488851 327117602 397331483 167748522 941639034 765929323 853202971 751976655 328831612 430421761 82894553 142619840 544627753 121276022 732437581 243812232 316306823 845303535 473532200 464775431 660351885 266353319 594586443 785205105 279903657 949309802 613061198 162520524 868879419 331032347 599724538 112241781 309791511 794528302 225424079 388958108 510073351 814425134 781902463 767017411 124353863 224844856 934415985 652694595 636153863 936032638 161836095 34237382 574839533 598336454 15715896 89067726 259632272 411691497 583523807 255844909 878845438 231773780 407704682 324341643 137785655 896182154 238867268 863514084 151152559 255446687 603080843 867296263 931770576 901082047 942632338 711094552 68992118 684636837 698527072 720123150 906580337 52799780 932919088 617818934 373437446 638816674 734538991 995168942 877306990 638572952 697543617 32465131 389561174 278677523 185959549 760895539 536011870 294202422 777469996 626236964 222483098 592404406 159571598 534202923 418449172 227254108 77821077 703467022 876719431 53273991 921564391 944714339 559355302 41889959 277868128 726917398 475097107 895535043 419680398 721471463 266111592 62515444 972956723 770228969 480236786 999283688 250252231 829601541 935625456 289033312 189476852 620661365 69611800 626062002 808394264 276448585 601278995 920323143 682901702 254564325 815995133 38956062 597072965 190559617 487884262 351552840 421656335 638299816 435675219 340806506 552318548 743076794 490184125 155657534 235687029 272782186 438071824 898170642 523870089 725189952 376495150 653248839 60224987 58316311 1334890 64856787 643225193 130661024 57540878 229083072 367650663 883725278 952478421 953228202 481545914 87376296 754942321 746292293 181182078 200123691 97066502 367505877 515765121 281729893 855899053 703662005 5096389 626870699 408227314 69383377 860809986 319829540 221363031 216024619 327036705 435474507 569790415 118394201 715758786 695110512 771896131 745350405 397395895 775213368 712935441 152720748 649666439 670430745 897355143 452609760 978986988 65903583 200885868 838884934 449992021 997642794 902066040 498397081 459567973 923880173 253453272 365047397 509888882 247626993 7530411 50923596 28849415 6218832 175855751 888793477 486328418 138342138 888104436 529439576 693998326 461345587 707343343 842133667 697961962 392869395 770287465 835936344 213699737 394895365 768054470 780157436 34743056 406551880 875509343 125514794 916090004 878946929 658356480 934265102 803025433 118668519 211446378 144543467 408052427 112059238 343426514 418245270 68163721 580215933 441159776 407088632 336389733 361903376 778177970 415941263 82519333 964205782 482528854 56476653 447598021 250868955 860718675 767585336 207255539 955380736 335302049 655625897 989884050 68004214 8609964 226923533 18871864 904511815 696353493 263108935 144610223 589609165 980138737 159304140 526762103 391606585 817053640 258853413 567579459 418440717 597459607 262882928 676352120 103835554 820172687 637068000 962059441 898452387 43795539 126532665 861018941 133786000 279151230 622291541 54406815 616802109 505764891 987845281 278078221 432131920 986976811 870897312 477481202 695274950 81295139 674139239 793914733 920118894 336674155 502927647 605222608 109150572 800393696 371002759 771478305 274969528 392516178 368802416 985793692 592387997 60413447 869816127 569521711 901139770 903400502 99162734 621517820 747984132 856046733 874631690 635614171 233705538 220625836 963692086 43738581 2831760 591066024 799315368 18911402 984719709 410057865 404119079 582349388 636956268 823156939 737137939 108111458 556259415 426021857 488402397 180384454 907015175 723104941 479668362 57826311 912554557 232871434 227236404 45032 960006669 139907907 337334665 995615199 845624670 128422552 456019786 121112471 347694955 61226432 859663053 960415598 402002244 319740002 832054908 14145272 720206926 846124699 353403988 135554426 607433407 728842107 978845287 62566511 56715299 666687879 103398234 717827079 165517786 646769977 927118568 327645603 759222679 511368059 897030749 949407322 954754530 880962096 453288731 315861368 225558679 117354668 617926424 868858105 444666725 51419190 730445150 983939602 765705809 587355277 90013323 60972457 39859248 315455584 907026254 350568664 530905904 311760853 928301296 94888302 386203983 378366723 830320584 342963309 473924834 432442999 314435014 640645261 435618576 739309491 861690601 225923768 235604565 423080874 614275529 338085516 848646400 755226950 813529614 437648092 388539316 910179811 238556406 231410223 978139627 732436433 34413011 205902656 293362286 153291989 242640011 867394428 661046238 530802856 103607831 68295047 941240111 302575991 669024004 63110583 361976359 650882145 278893557 618689175 44974052 529237500 365732382 322433894 316777299 373309649 502646219 858154646 676102586 50852827 773253335 586605133 620201263 886173452 224617781 140133607 102662430 755746761 892513643 433423218 573270214 377319273 113948434 982156848 546231229 207686073 282390359 479633177 15388776 350294907 773268861 168577622 615956612 411473122 725265241 139626695 574744992 64946711 416582613 92448894 603374496 73386424 299162477 996702530 558149948 849501012 979624117 331984141 696445566 164306416 295524049 751096974 759150408 375556229 12121595 50257320 944055244 594788479 667204608 601778673 865163538 910940735 711319235 666443060 971898229 801770906 416852153 200412656 201354022 79391833 732385644 336038358 269829800 215311543 185396217 869950030 519735122 84420582 995595665 477752563 187172304 546282634 702713339 829739538 569088675 525022012 154532368 895051056 888450716 450690312 391823934 412810113 387394405 374011887 860492550 879782513 388238328 936676710 174035839 824063007 563351333 811595989 177662928 631979997 961888273 3243034 845954489 455148722 648534706 554243075 195646731 809549784 21324884 737903319 179090987 84846910 590731798 764344526 215883411 355775494 934314350 917865108 797551441 627279624 840936609 151843786 197028231 759126862 998131020 814389637 315657449 471465622 860828894 933864653 689372226 747725779 284385563 83134239 939217903 404158380 230356634 560345836 506190434 875808508 104300872 234034200 223803552 839788368 517651684 564961404 720062660 642053996 126989184 796735588 433597562 264211911 759846406 142316817 314282372 792668426 429698737 492254520 878386233 365690004 312712592 863152513 676989441 261076217 841576710 641353481 419204058 349734014 287972941 484032480 153044182 878588319 971114990 856087948 136626331 140550538 948735562 588074884 679484897 985817249 148045332 321835446 750238456 941889788 800152789 895091458 374292031 287079653 311618407 144401341 758287022 171298138 691177083 921340463 427000909 251131534 990173971 540450069 733554363 68509800 193929480 210211871 88583592 100371714 224954757 227126387 328102747 827791147 437354378 352769833 620397868 849133286 325761642 934958540 78522891 995783145 802649677 792287455 222639352 287974431 108938927 879263318 157899144 908370470 222711519 817593369 560116327 399308242 560133249 883948677 500876240 22684328 613586956 932522730 282710039 269988964 518356301 258394126 629683743 545628019 759564259 719124648 886586340 325463418 951118784 760328166 817849075 823042509 453773230 960421863 594312941 34570744 224627144 752027202 233385480 282622522 612433916 489568894 660819341 985801733 987012240 277757592 693666907 418450560 594273434 412206464 595333987 325051653 262626439 100763547 651181610 120091555 708977813 910042434 709867338 238419356 632068952 978224962 135767281 421037544 504162361 914493275 983312736 321849777 205667826 426383041 621445485 4358357 155771155 985296542 304933121 390124136 833305729 969834638 565433755 287907631 117841905 579261729 232148684 988491813 697003121 705696348 829080761 436865274 999202016 555676728 899758748 712344207 580909169 844901666 600886083 541437307 34533676 980907642 303765904 658744969 183878765 628672276 165411063 483463480 406934883 234477497 88692227 542821433 790642578 827172263 318998737 733385205 824059218 114904333 252237203 524970245 510092877 531429264 564339470 390090936 825500677 238919881 528010012 431356816 842908748 786306757 313209643 714129349 603445705 511915139 679697597 695691200 88035962 842776186 478310886 68524193 365029421 594726160 666852305 560691386 70959877 759886628 702500155 772246546 184730619 973774981 243498230 978146532 872879963 225058936 71249512 19812381 655146819 550372918 718305801 275322849 778614823 988351851 210444265 770695174 289002832 276903609 155854887 398764183 258532696 555775027 124220795 296491090 24416943 103731682 877278125 888470315 274019865 863008836 533979163 152452807 780871982 860957895 144802359 181384450 100834009 661352531 470048775 641268841 144923610 554887101 751406244 483382977 802580292 245376085 729524411 234092926 710977279 528598617 767381775 760765517 789665863 267385727 640214261 112216458 619571243 945665391 872444118 534529738 613777935 786347079 52122288 672821587 491897386 244088085 658082966 30285983 646248969 467557984 160325419 142626013 117371146 635032224 84427819 719571312 590284002 915289793 273206499 656238446 578094616 589289125 701378740 315518498 300063367 935072159 118121364 777961354 924777440 586737912 779730060 342724313 779874341 80247917 840369211 667472630 633592368 956012207 4215121 889286396 360829482 991418338 154370837 557473464 771748372 677733918 790733792 97144622 442944577 52462065 45438880 948942101 20186074 590427868 620874838 30328662 669972825 608681425 352121496 787421584 150678798 333491132 923918864 957222039 24803229 836324855 722400762 166686449 251855486 196351699 384814506 183256408 62901372 744022550 264689412 799734586 490954807 248860536 179693826 849198396 573387426 194426661 194368562 960104883 9831813 739788862 631455029 159548713 690565628 326289752 529575234 461572830 233432310 42339579 811079328 519480645 775626167 428221988 342458671 626609282 870188118 919030467 39108832 553431795 574939712 270797374 277951544 520587172 622845107 888933356 546604754 247554777 750762820 333595035 795947994 639849096 379963993 572055563 40285842 371135196 251961264 393000305 649483472 31134387 105169622 607953397 241991038 463752737 530727857 176443444 545326873 129894635 618629879 574134718 925388851 215806733 871057076 912539033 587832818 956965173 306732744 858066108 341714574 618053957 618045287 929020565 768251862 703192789 325344151 449187204 768072108 101276078 532757941 461796189 532387460 8243280 494140400 978311146 400581097 934157933 76527309 240366439 395336441 229887340 282240929 135083268 712489700 995940071 568898842 341654887 213198704 785466669 269767607 121644839 891523448 39790016 109568075 773557586 740604776 739828184 570528382 406966760 802571203 730655455 467961164 288681053 839306654 283981044 560049540 157702171 512094498 339447656 664137802 986597118 203521037 751743811 304395157 26381782 851725362 907000768 942451378 423230184 981095412 504437964 608250559 29877358 71263951 416754571 354557233 195151634 211032016 211546323 105440846 746364535 631019032 218985392 253063604 111511984 732444508 839316958 4230864 271487431 557616744 139472466 616561512 587522616 450218391 756852146 358919698 19744627 523180893 810660056 749574842 581944669 790193854 843790163 594555168 689437647 976494036 34861029 580046679 409379094 271669324 747909894 684457544 362454129 968142313 641627999 386845229 940847767 187587328 674197073 279855894 374169646 191060219 16994924 709319527 674090069 332251350 373459448 380501592 297416475 381934501 459429231 54398068 42459653 418979084 376660480 803117594 311896716 271990213 824001550 949022207 881024668 100963870 223511983 686734762 332763415 754418296 643639086 381548535 564867664 875349449 986411402 127235989 730174609 908941339 658131701 599283592 403169941 861498635 826482005 276026279 298586126 701407307 457657030 703531807 795926048 168514592 248296981 811917038 220490724 952212452 326643015 767960681 640469734 354333829 33179664 204608438 226608552 413150468 926682205 479966291 64390685 799284472 17217227 768968077 290802734 208107272 302599469 464122122 927453241 795915124 372686601 529855808 161141133 447691405 148986396 870684667 56391919 941498169 275225810 834934491 464899351 794751344 808634574 515387347 946262324 55890625 860089704 559247276 991424868 688441038 952850474 650039936 546927933 376581579 839722834 614561855 784597063 189679363 722101844 510966061 316084352 573296467 290717781 785006178 215255766 557579693 976873137 946841673 511733680 404164503 861536629 316066593 941605734 511276457 357964773 94604159 291475140 974035475 359531256 634311370 933994891 539515668 476769751 182949310 838558448 646529412 359391842 576708842 726370844 347384651 333396394 706852146 765742250 38329319 881669240 698203725 829185835 424465643 693236165 634144583 580612517 695945850 804588864 869221121 498574352 506494928 310118347 966801068 120502488 668949946 898401790 582018642 840875358 315839768 409707683 682573133 771764855 20093794 502835512 205556942 715177195 690637600 302323824 516078679 335378935 905419377 623917234 557213761 157153740 521048453 722876057 597455415 756796429 730573603 530365298 666135481 437056597 668742436 57891265 204333210 216863919 887774454 288677820 890455939 294375452 683075609 135656398 2847854 866765073 294336677 772100374 54687531 329744886 363546563 522194917 611954142 82872744 815972911 427989060 125352831 320780791 634567357 181711979 382267481 913431081 877119185 994694475 515671179 204696949 758659301 461684486 157414538 243144585 571428615 720955761 890194333 714036997 278173016 886429337 692482656 325886974 582482062 805868347 555686722 586735228 693567603 297210186 833805062 904320764 731315811 866711660 222666054 252488430 159275474 887487102 16560875 530757432 810360004 74372620 808428214 433046193 624909907 627686617 204896187 700038823 225688877 444583005 413041120 931428698 134263828 743194690 708147299 33968254 387080796 6046951 938793041 774419389 364294256 151521757 7797520 210918707 244272205 666301548 781940950 751288304 12605956 898031119 234224943 780730490 425916477 326174452 479435131 675856712 817917103 264828029 153725293 441302344 363062441 699692481 891602317 882432089 807576460 210136075 428652471 797990354 566227791 920606554 647695258 562628345 299305210 271912672 265189690 659180429 798239531 310427524 89728367 226148413 652260500 195365984 630697060 670383919 862068346 225219395 193503768 51593338 165939000 827839791 450384096 157340332 267979962 312980700 143676899 207023940 240128259 830908724 222294429 247443257 156061351 709883349 594930269 795759985 370661713 262631826 87324358 130316619 937895999 945265906 866457170 966916374 827569345 340572847 452218826 450035863 354020541 568143929 472725455 145647495 233035054 423472177 756318037 170063891 69274272 854800622 627587618 660770650 128267702 604138235 432415572 918191091 981141925 668615575 712248280 693726308 507813558 492557107 343977204 8212396 179081415 775074296 782840509 197715898 145844171 797540415 87112354 758159859 561230917 16091926 896888799 44218800 410649553 293710018 312130571 832125117 435464092 779685175 480872331 840252892 210495207 359136418 284018204 679506752 209097608 79098336 685985101 187580690 810136680 689743108 554369794 742715376 398703622 173342165 105824243 393059177 894534386 261232205 348567594 318532738 281589843 453585179 215912841 366690356 146000482 732535330 565731906 616121835 947337965 593984248 935902045 994968584 313924565 874926440 684318005 846557280 219818896 611209200 536047099 462746812 901098407 114740292 679371314 236686167 749808441 215438281 683804465 845862755 7101303 84482587 596523428 26359684 517806630 495362439 265841675 686981203 27637792 788794769 914966842 698839772 352427475 400428400 382673112 96545568 814441408 877525645 969070560 832496788 119433981 301205256 118074658 169003681 226689460 803823155 436738499 855503138 1778082 585791252 102676408 703655657 540499096 379080423 291321424 183523385 952974078 252302746 930028199 989543757 709208139 612609616 765410868 586164944 968336270 336632287 905548604 537052771 347527144 994164562 644378972 552019227 940622096 967699047 417116675 133039617 73951693 247890961 380753141 299493520 210141823 782430967 997651657 282298169 896233367 757114355 934211436 376220130 296859163 201015445 61153948 893658723 405697571 259165598 424247406 926903048 867304286 54268293 736533961 46963474 617611662 129002741 777181929 542262582 180689671 623734605 618021341 689560604 513571636 316627743 920988424 521553633 186935571 122078897 477160867 510749077 491887028 69305471 576703546 955468222 149825725 125732791 902186283 158253268 606581993 528654011 362033962 391988931 713703044 667670435 330119616 668851820 234539505 453499064 965751239 322059811 682815524 774652666 951387632 92851762 530493737 890088603 131079997 221146965 715258011 719631234 885406599 250809661 103302189 854397897 501370361 832784653 490449445 58696256 108433299 774528480 61969372 1764072 287067560 899877697 864246847 217944952 282974304 566283184 802826833 677573594 932643639 107915556 868615591 743688367 953482108 448364420 204241642 74814407 729834707 482020141 355267673 345012395 197646259 17276271 830454340 298030867 670327785 402391312 200171410 660734320 153437971 807921351 505407036 584037731 892531494 674117058 131060175 371796036 808308969 666392097 413452270 708859292 869112440 201876856 634451150 740259243 845772737 994116433 20906937 105397219 927659274 379792808 327620492 906114410 820402537 586626413 709613368 72612764 792001867 172085509 694630980 552132231 140418798 876696778 31394633 885150062 74578662 149670278 760765557 610251079 385590940 368737532 142560265 199249213 312482506 469782111 338734299 666424622 915969024 247412441 358981845 594620973 118726946 946273286 470716276 405685505 667678184 727715446 14855241 580616357 203775837 209103406 257906044 853497030 564002401 594388263 777521220 469803080 800601639 455616974 712170352 617456066 415396023 168298883 23226337 514178557 270909805 517630234 798271245 218312312 407656312 361559389 398814078 799903207 113370716 1219463 883395921 135327408 73251953 680301514 39548088 510029676 539235681 956884939 150188664 206596972 576918702 127336737 445696108 731424562 227280937 640544217 927309312 330201843 93293692 225132277 819545782 439459100 721436066 514504936 106242725 919761610 391235433 706753051 766333173 959914064 752809463 611072876 687255652 886681013 93457986 395842730 382800836 451565363 151043735 580902170 341546618 929262010 216025876 443086325 571207937 178325866 823152173 276370663 77942629 170951196 200266538 660766866 73714121 960147930 409035944 220707081 417933025 927276387 232947476 557024853 976087672 949376168 253626675 597132532 98991596 195131730 390861981 356178517 856591533 290192697 507317821 710109021 224596673 302570734 743433427 417187557 7804227 716847154 167586162 822936633 236119775 262171261 46504450 493624730 249511000 272893304 679421887 158985917 308936963 818408835 971395000 622307659 385001801 821778992 662209361 983744863 343963433 446441158 478294721 419324427 791797939 597288639 445179797 943056851 123207822 420239434 314224939 842978095 382644851 592839881 127583032 537339662 336254383 520161620 97017923 180676430 948705701 764254517 754434087 487790405 810667082 868536426 421690517 853493307 140994215 73695271 78103439 560704493 782765915 565781841 811017198 532712204 400580375 276466947 497225694 639052220 829205280 380292877 231102813 76487189 430132176 360262768 936656575 92821670 270816532 119164899 264626477 392573677 171145455 622639185 858306337 938404320 933366774 857940313 96723179 681037415 540774867 877465037 934608687 982249951 903739331 503689267 451363685 359332504 981489943 911427399 35114072 79597144 488000438 635516023 147818664 731667159 277539482 286956646 497270600 229288513 662437967 639421801 926055424 570367927 550742903 908507661 738315244 818358734 447320392 732421519 595730427 108958990 199003148 531406434 301968240 229429364 566145440 354743981 235334757 305524208 113413621 486212810 244716611 14287592 949400467 94127561 13787724 886612659 934609425 607663595 889370642 105849631 769191070 917246247 485790716 980547308 494441083 874355624 417131976 421897295 390803327 697815116 826557187 519278960 236759698 195068711 362008467 993519340 72512050 105352190 572807726 943147091 969755377 713476301 151595744 477578411 442623988 780261953 622194569 67734251 462578038 221756479 388397149 12208769 37041987 772470875 6211170 141594061 804165437 250051682 642675189 949922980 810621915 189749457 674131781 785601741 739646629 417770843 157545175 229387911 256040633 870538598 499650560 646887682 291841865 99413646 345489774 568777953 22626843 435705633 209932192 586138814 550251527 350298274 407983465 390972326 259426685 14290503 910642289 449374105 945949949 804447611 15264180 635152907 580093852 592120924 776508417 477075046 751327109 111582270 561441916 593140358 212794486 832140326 476426012 424991035 834151999 137350479 534853933 765356747 290306887 354223017 285611984 541385069 181967623 967424085 802392182 208883662 775990924 277780522 105513321 763981712 51209465 538831411 387763780 711773126 180258307 792887855 750138997 268445050 357711475 620088080 390892482 15064104 690098856 6788476 361558721 399291968 82538258 702905935 952277342 22010279 53962936 143579927 313855833 723697718 454412723 304644759 96648901 254516794 336580017 254798660 922026123 819108594 106031731 460039115 58127589 90745109 177699919 857356169 759820259 732444489 563892398 382226705 387023337 898659501 423726735 366983850 900009007 553987408 898907394 71610575 594474816 928199351 548436910 125703341 39849851 47370331 934552909 280722600 911608213 559218729 348799530 151183062 513697557 319876352 47965866 182466946 203568855 603958582 175083968 988900779 113360778 760391956 874874742 275553154 613599282 372391253 670016875 460841712 421054630 465445803 104761680 999520781 976898067 69041466 478018410 652488106 52513143 587659547 684940051 461229512 794566183 645095131 738992441 637749791 162904649 751726841 364760798 642437272 368690011 715689323 38294 157062099 653165226 125002778 931770380 390036898 156721628 434492257 223991421 308109196 567704935 987714706 341012795 651964747 302931223 131017841 229561643 926566222 658315916 729764791 583985224 878906168 350865337 265020816 993704478 836554335 23102311 463191581 171571791 105138254 615230384 820978931 465275154 743718211 879964804 460177819 756890543 61294770 568722983 463531024 936410884 288651200 168326577 956104004 466515971 957416904 570708876 24249754 580639793 661788890 916272122 49954157 80398377 303250487 492104077 216459144 95089175 307153110 986683309 45134765 669612606 342394851 684483350 321968911 680990066 925922106 674632791 145007831 631568287 184615408 338288211 604843170 661982784 979721931 271569092 233050881 487792872 366918853 680553139 712820215 357991357 669899661 61021953 385597311 37118967 464916997 274280674 207114756 969426022 633343685 805629021 463230695 522229226 111432343 861733581 411661053 537204728 16562425 591240035 457406222 869426972 707965598 952903585 440498775 581484401 743458285 848665568 845869321 981666603 798507392 437237707 246053064 640092941 310402215 941864674 235429676 842481395 216232419 631383288 367760451 195341898 14423915 325132982 832209165 720604819 207005098 393858582 694996991 946256868 263291326 64251112 798269825 895779174 781208571 806156624 24414320 703754712 424952422 817814086 38640284 731523594 400535355 227777556 410471755 246280547 220951400 512118492 194461621 944115292 740531983 117130512 762051461 52807939 101710344 854029816 763466078 273495417 775353948 915080752 367620948 452291700 63542987 527735846 55725935 400215486 563659591 673263264 139242028 99832500 954808183 650962229 130056955 459978951 497605941 423214287 340468930 694063103 699437328 897870895 485291096 193319795 702130891 149549161 246152971 402811346 318930908 758776163 979908891 772829661 470888942 477717083 57498684 726542570 488076127 265839710 143842328 704945507 54236099 633430738 405909707 223572805 485898847 493704685 674387813 138538658 47494831 246819131 459207276 382732319 338860256 386275868 766926935 30656886 615947862 742170691 878519316 244327413 990698024 273452088 191743362 614633214 290172319 818531287 197725176 406399621 471891643 42983119 787483837 879729045 363305646 362502948 744480141 160848075 967303774 342420398 535342362 320743641 167362279 985464984 360155529 236126981 553132567 871230945 466650353 785136551 422605041 108966366 517692896 745240750 336301611 834038710 498311125 532996124 234182831 185513445 793715655 789254278 361875997 238755002 974544028 673038229 942357320 682915544 14879667 780839559 326255285 918910905 566172507 43272878 156508959 197985830 754014553 371623408 367721973 20037312 108863846 289457477 398278106 915569275 138692527 894833469 378530085 283421981 788420948 297340023 131754591 602725828 806557417 117784619 228842183 868595549 647410935 923462305 562388689 802114349 937531004 889722296 830573730 251577676 223764839 797842784 806567574 551747365 788938525 231911968 186193851 289429496 161572087 343998353 343831635 984244569 400067265 277396704 182722646 469892526 375395133 470556496 791740909 293042356 118764702 173764790 263923704 614135802 204906766 955162107 162131594 783563620 163729192 926701982 306765671 551566761 883865726 366920239 879513229 256064726 576851476 350390997 754698408 213358794 230550755 171771337 350951324 239600056 175417943 307121881 605303039 128562343 240126162 326813670 772226203 462132725 278875175 518161254 131285745 341930448 777663007 978730723 71698353 723406012 971216119 93599097 697391172 488434704 435591648 66488412 308782146 623387768 895114110 126217552 644089852 862227060 480698986 144241967 805384947 573843672 126476208 401233511 163436638 968876874 169579345 4696953 407047593 52320456 892333250 549234555 54488816 926195743 265767788 132934807 281417096 82271861 615348010 660402314 913398391 116001215 731334350 972243238 905971959 132436299 937898652 476109520 54126327 841728056 135719628 568907522 493231002 833164281 857699340 98276042 7735221 191155415 659693053 358738250 440326741 691373164 189230002 419048502 154136887 56484392 800035380 230250585 565442895 193057743 363939072 84308496 247772994 397793272 30021766 750787533 782499819 760695440 361643692 774202517 746324698 587275093 453254986 711590531 114280144 466968668 280860332 903140675 977808452 59483788 144878611 230048407 897223137 295111201 852365364 675481302 989495558 575042857 893245367 557864808 859665988 446005258 837884857 471044427 282099684 113315834 29426250 926497681 416660063 896301446 196716272 997383136 842135267 122102028 345690403 918767344 583236053 119259968 938967759 604803345 538817353 22365099 840049365 945639586 874234252 487134503 749794185 633989275 185082267 149806180 766732085 368026372 690834345 601547367 547955861 383876475 29345181 719133446 602886490 508747699 624546705 685600109 963663015 162576879 1055828 67267739 255254935 459373451 698825193 754217446 236175797 405774708 992794118 471506803 575118210 569475754 535591062 7386303 325709554 559844549 763795512 511720217 477522927 480483437 530361021 417084965 848569045 704453601 41996205 958667354 556230388 877330289 612935363 330997125 214589714 470575108 994635373 734507332 738673638 887872403 793324621 890849164 896384158 155485100 605608890 52884772 667771738 878137840 346762304 900177448 180233134 764513429 742759963 693570182 123804452 582421732 807356096 168322180 584541624 521651132 604550485 959498552 596199514 680547341 554316084 907327758 668994416 587554654 583595628 686388295 378419537 734811721 912659520 289886580 763500746 414344441 16853414 769318398 222260125 465143730 76875208 812789922 594978558 208503626 96173191 645735917 867506708 859521448 837305587 786143428 536887422 228635212 425564116 457200351 705926347 944801991 585548324 810956617 390270720 636149054 72252819 194037986 907592471 456813803 847376642 977822941 719815034 261998748 163725064 76401474 782519180 402064178 862894704 360357741 286685728 912291876 511438009 921237133 944837120 186822649 405456021 798558246 252452455 405681361 806041706 488601232 692749191 368578781 557625044 99804533 106547973 595078883 461024545 812362839 555337336 980401339 734857683 68487943 261202413 482513364 509535010 661490223 846093414 904157616 945696632 572707274 199131734 108435555 362553331 486420902 374315559 640784152 881387750 927351785 29937844 821722764 906355288 275461001 81321423 681813905 369077891 803249362 17799356 70570893 584760918 827231716 751113396 658013432 301794292 813312307 76228451 336478177 627435827 149150725 396134763 905007722 35239454 709973752 511062239 649487688 310478196 224631417 351147464 928763972 120580390 750125389 896265892 369002172 220145884 382025996 874434274 304751650 486164081 602309281 555367271 77433980 41080435 246785740 467099916 771160802 822239908 431321248 149529373 975768068 824819323 254061061 707280347 117160610 856224164 549154359 512455419 128476177 181006460 418791493 430714406 91491517 640744598 256276883 65933175 12786849 104577336 989188696 965264384 342438352 600745950 128999457 420773957 553168624 923773622 888264268 656117951 856724410 538447651 250396302 337903706 272000380 827079227 637708142 726401783 142470039 973039433 449502919 814029803 511877120 321996875 189682250 138967678 91947971 17805940 694935545 752570477 586821500 811033772 952007853 476080745 677745116 446064139 711905426 993927318 255647274 570650722 828200870 403622669 275500735 154629810 17243197 788242010 105653129 775923122 995899776 308130302 202503305 85643341 299813865 542576366 791282773 719862818 241859528 824800274 994181270 410543619 120398273 433363655 483339915 919857270 208548172 503117150 761891717 29488695 464925492 146873242 821969257 387942580 25844249 397257526 562601265 708531343 888291566 917658717 124613483 244253728 515052923 601631280 429374648 774674417 63791323 125337924 439518286 491482432 123570687 255377441 11959927 794780800 335580714 846507972 7707408 775085528 403234164 225701917 607434251 92453794 479060807 863502994 190685677 716259053 322618597 227083387 737181776 123935228 540211679 546998692 248429154 843997381 205852319 130361038 624770917 427938163 901177056 200918061 794455853 792199397 987734064 979496427 510731429 517420 821292661 459599012 309172810 330761233 695211109 162118120 38562478 754780556 549913100 166897341 875787511 751393358 255070538 566190618 26755933 117499960 740204627 151835501 275607471 755604706 412878381 634095894 176870863 394077205 159336245 837826794 283428913 781063249 136278938 971737777 558226016 891893576 881265633 502351015 250130298 319322209 845991263 802390527 753996463 613367094 969953474 693844827 369348549 881217046 185377929 750832470 781922199 377350788 530946951 349691130 974788753 897193910 364286308 424074314 324952374 479410455 924032796 540905658 162884763 829822661 275543422 891271089 521487593 940029971 855851437 740499214 151864286 839094792 179064227 750554016 71702348 876410847 296690345 428140973 725543833 793885061 603309025 95717228 941861438 348793886 187732668 930494859 186463816 372092033 926693252 594421161 989833434 107628471 260793299 545188573 57348009 438457728 411933978 26998829 381256063 56190670 471019804 7455512 878944440 866472007 336424560 351415309 82786248 233408711 523371266 229917425 462229938 816237020 147658386 343980445 758650514 367718472 252168499 481495646 108192277 429489283 584504782 187763828 698322940 396023095 340553885 41979027 419168925 797886402 361620400 704598885 109346145 131484855 583245675 479273477 630159687 623754845 864268038 792151173 855983456 567882542 293367564 258910825 585773905 852677210 342372316 253343530 821062100 337238082 674322987 665373877 552088375 547103997 659094400 71018985 701097435 714704086 931689655 787260188 923769014 206559435 435581055 877955223 313261010 744387344 958154204 550979349 657149644 127481738 488657573 341599304 21199701 193142869 85939207 228406612 448331701 367737407 8468224 775219538 426052419 140996938 656895717 175385039 719938798 650652974 84159964 816585546 524744119 918597076 60481891 628764601 496729396 387907548 716089031 325586181 953727503 180414744 880727982 630675337 711550597 195025167 596665486 339771031 364483816 165493115 569818419 878215923 471684637 484356811 754900797 950902102 412147743 279141026 496373919 429562092 966270074 556873814 260026913 443451350 510247121 960887153 32210911 513905577 116089176 627032116 439877577 77268974 969727834 668709391 68632097 572666528 197793204 717535786 501495296 66859697 51211608 453715936 734747600 909551237 78945740 657301822 640259539 36444276 379682728 472037769 843292315 469506893 192020764 883852213 207437712 1912526 130934375 446210286 127774574 745980461 179590241 897739027 790132932 885853330 24654578 548446006 11554933 415211930 549452184 702690333 194490427 944254934 445229541 703013060 739481375 818360650 365056511 16705241 960108546 422948334 935758623 20861759 228840472 331005488 433764882 453374092 188646248 166443376 34420155 892777354 254498637 553416835 685408655 929320377 20843768 938309169 551951895 584362444 35782635 183046583 259414386 643151912 779581055 657848134 949086672 154713448 318709855 958239362 992342008 270175963 121691915 177535235 973227459 506830596 243163222 756925143 832255646 416386073 495443689 989740798 426829324 300628613 837687486 950973421 755167778 979875175 332259749 77762060 152076298 592939793 999378370 32185400 144142976 776844681 620295181 493726786 756900952 70056715 615997648 870307693 581103350 873381509 902210093 877156084 631227092 457302041 563030678 27603074 826646528 594476446 850600787 369951928 534462107 465591072 610633471 242708906 525727579 940748636 955458059 439225698 837589001 28799557 604409658 491130460 948717060 237887362 370165283 532276232 748818109 114193645 610289075 621507916 550945849 840273173 898396840 360175871 609429394 633438141 461257239 859637871 902495606 572196955 224513510 570622428 367338662 380601498 917739347 364044538 700817529 671167704 579191659 746952563 894409046 660591784 452485012 130219363 13629757 345487698 562943492 733208538 565958719 341284430 14237255 317364062 160051969 104081869 9853884 596336230 388278590 967168816 602669081 165481952 600979522 626972046 698544099 212468652 891921775 294479411 503021303 690244382 252412604 108705563 117781252 635617152 72678705 492142459 644417038 239124109 6976364 210130489 614388461 179372280 412992543 687572079 806150604 693069539 493239951 833124844 689176746 321734760 382952215 119722418 408917980 997422100 208151971 242030201 366019721 748136807 313799733 175008555 968999725 872009045 179348836 311962470 148507670 492412103 313336536 257853437 758318570 845393691 482179535 228567415 392898591 492900000 323498907 481025167 267520898 809128731 704319522 196729010 419264177 679210566 233508445 306503812 810146977 578038347 463165145 726282843 484515608 169551949 65401913 646586562 690844467 855457503 732356530 696672504 35342306 426911882 783214477 24781679 219688551 671857228 176011176 933139021 134820571 602675220 823342070 841020398 815074985 297769287 779979514 280629088 153857297 544180542 610540112 117453541 514288038 97454022 297236261 481996405 163845841 937931678 114907834 377991225 334011468 561952508 542071012 529120017 574828455 15259145 616673935 317756687 20692166 430551904 855259702 133051386 260341856 277084307 770903149 891511756 28646018 534926502 198234200 867953972 450173707 213845650 632470577 767054357 468898349 305109443 787128261 310121989 616256242 659502747 752386295 531017935 248362421 448308973 150464572 771762929 240935077 623741570 846148894 271611423 708801093 564992919 185104570 663663038 615398895 215070557 984304193 116411242 468162124 325340792 280739194 50000752 223995869 183762817 453680959 687506773 99712886 647168388 199627771 812647501 605800125 752179843 579636275 77449668 761630384 941360113 733929722 206366681 225940508 992690999 94073978 270919134 906622502 254272050 81365106 606708442 225811142 739173299 827343027 937634311 176973127 584642558 946753954 546560340 602400969 591791947 510355642 266241507 513664703 937238601 224930055 183307916 483398002 225836182 255655851 848173145 143892091 102719816 312630364 470040840 4354381 821888871 57210852 941937036 755793833 269806704 697873056 960638092 549733415 12224212 22611714 615226083 772099252 629447286 520712208 562838046 809010446 359544113 464447970 762682113 892318538 909868880 45217831 398435842 890510415 843400724 27596961 464184269 979980377 355303474 181011364 317572030 824536950 537347154 709564059 713396330 417229836 284949905 288821891 136227350 751815505 129907712 846060655 460530494 854166994 190559010 420794370 78146832 617198573 971966066 24397304 616110062 933506134 160010715 218851997 355359728 774615702 846901822 935120468 27472224 538883975 66130928 871003153 509223740 663104473 557645625 271200735 292939191 398412945 211713749 427841884 185218744 546208133 352520311 985306168 126799961 223300065 487044930 231958202 708853097 169064612 757987406 212681787 642331627 391490340 987582761 939363752 856271765 433039238 693435987 686026244 635934290 322129223 487980480 751856356 106207936 860266422 515967322 11645169 21813427 55146615 265120125 412969577 707502512 264627201 807047545 95439263 516853107 122123809 263539732 919055735 477931625 89372277 329948677 439326187 121890870 892514546 762060922 653297800 616464945 628466271 245503891 558109425 573197283 157794519 758282468 135557979 718842252 375223371 810858999 968920336 578493086 728432382 725052616 546594028 103859776 675258887 809920583 300607459 858551244 957237714 626592474 680211833 850868049 925201567 810908888 512144968 446584849 665380098 740816655 440327806 49637124 537255009 337654078 401939036 311038292 423179642 74869404 589230264 158747359 146118874 628815439 276599676 776577209 5482854 900572150 106260004 493687207 740793558 588675104 101143108 267780772 162899509 575502035 724887552 161425760 763344483 772123654 70607507 116679356 636899987 110119974 30620873 145079631 305759949 96980117 438160260 582601700 19822189 910002726 636506682 339316218 744958626 429649827 213967221 48758338 3329264 701355591 858710354 477840677 756399022 214224453 169493507 954090812 357551241 858245951 801546317 632485334 376495871 765864143 961844746 739630965 561997541 702555393 605562537 773006929 767829730 828832471 522101673 734014163 611229938 721830596 455895329 399735323 444101347 368599346 893426747 830755963 897688283 868358908 211177397 880390650 113779664 123067380 797575775 128350931 166833166 8784734 686775199 637005299 325142453 4079219 219259888 85161342 420152633 2760928 348703582 247195978 156011488 338821956 644603915 374598498 276703815 547734965 465550510 889877124 934442718 783201852 74440463 459250340 913108583 163810132 339460748 392467815 428605563 889273967 142555288 48101545 864603141 807101041 663243062 328378103 812686277 974680115 13406594 239747606 970628814 131191553 862645800 465509754 235139336 756773149 656400363 552519375 779815343 555502138 181923360 314930804 892968914 579250177 596641072 480500731 131741909 612416655 635692314 248628395 695055087 116975861 964029934 165951998 997386669 366212023 11834451 296393251 108527213 340741966 884896770 262175357 622249700 219253414 140598344 971473954 392859032 630037920 890069128 864770652 87549543 992508305 66362039 989176108 45615871 322666433 408903646 114112962 362366307 201458670 795743900 445571334 22760556 312387270 75903905 784447507 190202438 927846000 141300788 327754422 153408239 357337348 436462766 767676403 199240379 71873806 191752445 715480193 398415058 181615119 878388514 48024393 538747313 346406652 326522803 360962026 984600997 670645437 317006938 192262456 280275795 176223407 206121044 39183289 101381171 735624995 82065650 629595687 969576208 549046237 150303259 842390512 856855689 354647189 580928200 423194553 838117268 9053049 398802311 306776023 692626422 379363241 986833146 523671764 211998923 933955514 723187285 722762736 181574404 88727604 433314786 711446429 340605412 407473684 822881664 37543426 887840643 903334219 309123360 76086138 750741835 563097404 621426503 433433362 102045822 455786818 641829264 371236110 385640621 723366696 727229223 943993188 276834882 333319087 146992462 233931327 830751480 87931659 668147164 474397821 769686621 476874598 388729784 98306610 514180695 588353372 372635491 687424291 940738972 160604286 501412716 154983244 415395896 131449295 203690745 643685211 784429067 454919242 17476164 316576562 471673672 555683673 84328732 617429609 568714488 379973471 183555424 146219721 205630325 249414704 485388680 758660306 532638959 576511892 352727324 156383798 845004266 184259016 196198714 188933724 417620414 253503484 464790292 58850014 638167830 163529429 535839344 191047179 185991794 444083949 561478694 828987749 563347109 153217358 548076710 499351076 250549591 600713211 233179759 539995570 723455876 275823720 678302361 525085741 735571962 321219068 725283660 740499689 405757407 990102678 865684039 501154027 99354922 955221765 76190554 116302191 565296933 559523727 190095596 179152994 833392370 227017835 326641781 859591912 301253122 970302023 69944581 421658583 465200799 943754434 446278076 530712123 581963363 992975091 860636240 775096784 339174079 319087584 672416650 799914891 11054966 532425480 747363784 761197586 107501855 789854938 31973245 65429567 655721894 670415676 999490477 628308897 668252875 781177861 275722354 664268538 269186721 321446274 650425721 960678594 983451152 440085749 471277189 486822306 80874837 317224721 990566891 901157627 131562621 54286976 842214677 233198941 448332269 410020957 613622016 150717200 653306077 767620282 312734909 457997454 635143128 910162203 866939379 640938246 124947261 161461497 339874139 165127387 161014721 131887681 920727363 660533283 866389739 729441746 291084300 278346025 408895895 629163011 205249196 925893356 901722228 847271706 970286381 259494302 69976710 638809046 806296364 449641765 590255524 153829862 241686619 164570525 96371963 731239535 407119103 593252307 829956489 336143498 875107442 644338124 429293730 10228163 908850594 432480060 857816175 415445147 321381776 529069072 839271530 19273991 694530003 582428389 146257380 618549488 747038995 459280782 624693376 938232497 823641998 657427345 169102517 709687708 14855574 516885674 703171151 460990069 521448464 874679112 535938798 122228725 124774134 288485131 48098949 479850312 731242454 967807820 570281436 512633488 274206802 841009557 300762383 722501472 131457694 478190628 368473102 392746305 37163525 176384621 34643739 476539440 367956325 52374421 328592718 70779678 253881262 699384056 202175764 612805743 744378982 629685923 895512748 156068988 96636968 729641434 971228841 266685969 53364512 58229652 63386739 201122543 44744593 550073082 229412549 203620939 535451727 994761708 694130224 402531149 436882757 87806331 892061079 60776338 407998449 627871856 601735858 447644075 961345507 846394820 830703755 933089180 593317186 37434662 440516611 972433757 745450310 844020600 214102094 409509212 286926527 323328338 169023347 633990394 854812301 366609790 834014413 21453065 533487141 807519610 851457932 932837461 649204755 885634041 926358837 123698200 87414898 495502178 331219486 959072387 643921269 897959504 877941235 215893308 984824290 29503504 340728372 391217626 190185874 522627878 569271988 558249067 425256435 165185480 861182492 806419952 90831494 875885153 193135717 720190683 512206177 929206800 66813282 759538071 740178349 642901286 80136500 517871872 431320617 647885228 480163539 778896615 196906405 7046106 34007180 881071247 459783560 157970593 112258686 611574067 500723787 205689891 871205148 240050814 80246780 857071669 520324014 539052305 791100092 32793828 659783375 887657216 594679617 146107117 923570416 509173333 904630101 664825411 781355732 107583884 153802325 911047820 208778770 283395605 978551730 426118565 620907415 953722070 280531827 438777882 82809889 588078758 990393522 301986222 542470853 6339283 83628571 867470809 262516073 145552797 789276272 73902149 879483722 766729401 803062535 140560721 669351800 467021262 682636874 759149198 200721749 373417723 161416758 286657860 964138266 982949200 94116061 28829934 310994515 926763856 354147044 824812473 649333341 545472885 153914373 195102986 689194735 204461740 493172622 293445621 914861710 242120405 776521953 705763270 889434903 499490116 769008114 527619708 949275193 687047491 944914892 473343817 287638008 868594318 764734220 346091796 871828780 94573013 729010276 441851127 863503360 981119805 525399322 734721216 792996467 404534495 633336710 236748660 150704346 84968264 598003607 570626504 659187804 955280376 305787727 277550247 236622196 702499811 872222530 817275823 807673459 75360755 359070491 879569843 336730620 458673027 431615000 276195130 101107590 389219557 759452041 141435646 573031902 338190814 270461268 250606703 842421666 520992805 611236980 17229870 681461191 528065511 707274614 870425746 552217107 380074054 737351930 354448422 92033443 721493461 191619128 910889513 546983783 49427230 855850872 661518092 880972449 193982748 43942041 113062648 241490794 553698753 745453451 574704198 85023533 29305969 239637205 931265028 778039082 147550853 607333904 479890551 545451764 845385674 838806633 941074835 884834036 694460671 449200931 319935877 943645923 102098010 297072659 594606378 364591188 516972036 969752610 79858837 571869480 287494296 336348111 114398605 802590231 322402216 890669994 262234636 425763630 78870072 321355994 161131201 355682891 858250561 66615704 436846991 342281123 367241264 317349810 933598732 717319741 116444516 447817993 349584387 55317109 893350067 616664083 509116402 175566458 630709733 290209369 74145677 797199567 553085240 317754618 252112953 15830222 810603994 250521383 643961233 732270880 468746354 268365989 777622501 601357382 188858264 525351502 882878134 872430356 319709273 79383696 719195964 787882288 968768692 537893356 643057376 70899607 214816799 28983672 59161026 780698393 680767490 867590494 987524404 512378072 773895738 999040859 829940796 669921997 789902744 352771393 726510102 916530243 566663264 788841333 235076784 783583834 891904715 474603889 260495149 477969541 289875333 300885571 354855523 357922060 125941807 33148172 2908509 232391563 818929630 113771395 743649753 319836529 671052698 43709040 314923722 633138306 574759648 191509553 231222999 692041046 23028769 629819704 124030682 306512344 199670081 726360202 827168355 849420743 292647448 636200513 644557875 662555960 604867828 622296588 299814593 126587154 589032213 1359786 576680120 678540176 13943600 635147123 603268471 297711811 910683629 863845583 371411856 574942478 6580841 742531260 871275849 477719976 12616373 19699788 770921246 749978909 363335253 16331044 36740669 506770894 153627329 306221055 478280968 173331052 987515367 436133673 216812951 890144385 537692327 224963845 660760115 263470823 520619350 473182856 482812380 123757646 930513468 986203067 515842756 553158587 642935318 565712444 780365522 302700803 991335572 443559869 602303008 470635348 714924252 850907780 111935358 414255021 955315717 876228074 290545388 969225569 492795805 636500188 344319012 766565017 770272804 166175325 867608845 980932814 105353103 400593922 468250185 478086995 465044421 835114612 479943592 376768457 858936101 720771570 525332659 518147752 231979263 986051276 687355170 250883005 887595542 129834473 891480422 479539366 126434597 295752002 143849760 553522008 50789206 852470885 376731048 750341786 125242060 168330995 709076615 332192903 622753051 704280866 242447869 105610512 67959242 359248955 525683580 601814136 519276248 378317085 874526250 67053526 861625652 353227448 133960035 824566678 909150532 87259283 836073781 709052920 429157727 910196551 651727075 703544720 147942483 472987906 356628835 11502532 411199968 518920197 218885088 94956369 417066810 583587622 543940152 632749255 540252043 785296975 220578174 937635080 571642990 956075773 927029881 319094733 591447669 858000066 442577444 14537761 775045541 105330115 458669100 966088420 584433141 717228346 614096757 430814537 988576723 58608629 500747926 41868120 979546782 433400533 461516888 782257773 746203436 175883600 272876090 205784503 715084870 386721264 354317552 893845690 53828904 236426450 758900960 973002701 640835586 103096360 955635363 98288285 658652793 496776887 930730890 395391144 737018406 929296986 638172695 387151811 32433942 372426877 496271487 436434069 178154056 381563554 383386927 255613721 582682162 653829344 158279492 322633504 20598589 431487583 339269393 116663501 538021956 444769757 237847709 145715991 293362457 806228012 16472098 438426186 547537152 529121457 851789456 426519174 736127794 111026663 976898055 280085567 700929884 447145434 542825056 271331003 494386205 881824429 173495205 259228823 117488523 132847892 664543381 416972355 620607919 726643418 501908769 896687745 692587268 291746653 312742642 359104234 784755452 882569741 374425056 46873193 49676923 111743729 806875260 124004285 25595994 561248033 674397831 598024700 109632997 815448397 992556409 151553803 494152030 888458804 993474811 808090150 956025464 877463342 74781037 329654366 651699932 500659363 433612897 438950166 736901287 314943122 774959902 420631686 489466090 570920715 837304094 854982712 795644457 275346101 151136912 419402126 418943709 170485577 80826582 201636410 259010546 997683220 753374984 221033155 334321481 33615481 182476400 771881223 687359543 818288749 11355916 621966516 904155653 692823290 587602448 111877581 782594158 423058620 62508129 134695723 503130147 796087399 977472794 288281849 603059018 113316671 585970187 322254135 759964155 317608862 662183477 168015417 982928066 140792177 623520335 771679525 742447392 477339324 279170884 273620600 44908042 614646802 918753971 513465474 269662824 401415453 893071214 31891941 43124631 756749084 451015163 62167066 664331752 729211232 124478230 756241388 444601119 356709838 634492973 197326842 153043188 883088224 9578467 742419769 864010133 212533412 914453645 759036273 73927714 378273851 925641400 753550267 755589424 994701147 560012705 839395593 660852551 672040014 498857915 451571870 40342372 692568817 467377453 797562002 117481336 861209398 260658257 553617487 857724646 266788770 757900855 785160471 677972745 900386767 214881055 342727291 556053932 395153131 745643267 610774757 866598800 67271224 208454155 631996431 35260649 960288650 169362198 3587978 315294177 340802508 851868216 311114041 54803220 829455739 642059574 409514451 859124243 1787689 63479308 652720484 407089633 302509563 940014951 609469388 275595641 828032044 270469932 111650110 405929030 978614152 177556719 497088195 357671080 390946290 119346301 169287861 389046902 775731166 838693970 625848132 199525239 444208343 280459299 919955700 126236136 832386042 766975318 900829981 71241465 354387577 837294981 845496938 9921360 574378522 869914879 667459419 913354628 577934774 892604743 444848323 565376675 430681018 781831571 29226570 283581612 673785001 595304270 682399979 925403414 216969623 835008150 919983479 97913160 970455728 903536831 963490577 13958942 468567471 717696206 60529585 511789931 919239271 959724030 682528929 333053041 107896126 130596927 432300803 614655082 166780845 798546098 814010952 123010051 344375489 533527086 481069754 407473884 590761885 263674814 466631667 286606345 297040886 361683745 26641764 437294740 130135189 348619593 310333647 173244408 106418649 881544924 648518350 658477223 292923442 328028342 563282762 927871622 146164903 226725989 733858820 305345900 417750353 79191724 374803727 675887014 322167262 216488960 15838547 753216630 151155727 808843022 245458188 994446991 9630266 316736307 35500106 369812635 687800264 35737858 572820335 95056309 391404984 579395266 532052404 719981551 513122075 457183982 829989283 47969998 958078870 843202739 806355870 448079817 604378083 315909237 479919703 715807437 805318736 736210506 473501526 848460476 100230462 946033277 777658743 653095401 979233187 288184333 708586857 278486685 472520073 230248235 125772848 766908822 805889164 734505920 102110115 958089347 711449696 454435300 924169966 299599497 211727689 113655912 367665938 498310849 996504226 148104525 207192928 933032119 392242007 959363659 928604674 982757613 473403498 948274507 663895154 142038870 669000049 292724973 752248833 54982619 793803030 742822659 271109714 48753881 134352790 139439380 802736092 585323425 233589571 123391194 760421483 183049463 142943490 852783300 998095263 463339412 92563150 485570677 807258987 340751524 366851123 746755907 719924887 806456905 772868307 960357561 406081343 107887638 322852581 311326997 880629587 599158164 697852337 396228555 186703125 8198336 832833557 878749184 903250845 302213771 152925955 517969679 321626968 438475609 781974528 210808584 850281605 804526467 192647591 240862508 532661175 644194773 18425380 503919218 141473366 659619856 156886458 445966342 825603869 57278313 551761726 197231556 482639005 183310088 188557465 461095617 550761913 661267594 654434121 81279427 3493928 108447360 115294944 907295172 598574327 502926574 329014660 385796723 901445380 20439501 444903022 826068658 874009476 329834377 159417451 622626073 655030909 323671427 135548510 996053618 317623629 174391952 910987708 781897787 435653409 745624952 772691726 821703463 521433983 528162168 324270706 468494237 309489853 551196864 291301915 319098935 430426759 20978422 754791117 97622597 174276701 4321202 442692706 715861064 134789650 125492480 50314311 367115895 741438542 256925153 10731519 721745213 403976461 532855497 752705439 378963384 176525343 764526626 122601552 842283068 475668390 38383816 675082449 651522766 524655770 931272844 298512883 754394538 823661384 176118962 366507291 430447550 859025359 961985650 968493251 284423468 562968226 899132282 316966648 706094540 24260873 276324970 42796509 932554663 152280991 123874134 630906920 828431741 631888085 703376456 940472224 678647616 88852846 686970812 380925861 989518999 960661249 151931171 217036712 421735260 528317563 216445280 38148014 261498910 459072666 139569486 308142801 737896096 585645170 472677431 5610943 43192408 184341484 112038494 329231161 442809073 474542146 788228471 591205525 306143945 612752517 657637162 699963965 732922228 323453975 984369555 98809390 906288695 72797489 73262021 231812218 530392718 586512734 607685186 5999558 289440934 163686910 461523844 881144781 851269091 960240837 778113144 981060571 649442652 110579769 9364734 285896530 592145498 555915831 24754794 629965352 724691677 319683182 146373638 802432359 211321367 994035426 183022478 712488365 703460078 931194475 627344818 64281002 701470846 483562291 91589783 630143652 16937621 183121212 857956951 381072117 56595510 848861400 559220092 231506060 118353943 312536367 434576777 227689832 311196450 417534652 535490417 503243809 160556279 289672144 69447198 402917471 178469993 296124686 836756203 793167712 63005181 741127149 593246762 288074870 554989166 471437114 89620384 654269831 459955499 995726739 38193412 678243724 519153879 450347500 618672771 119975698 48166857 261623310 440608063 882929852 580771466 496522003 946169291 892459966 445434969 468655084 6991537 760409188 134762922 805397467 72114924 174415497 695604386 265411833 300606062 911938080 160779677 825324721 847819419 336564655 359903657 9650243 662348492 876662991 36135176 734483266 825284814 126314669 88367538 809734678 362350944 184633996 499048912 693311099 661397689 946989633 885334594 758863873 603860735 364828854 991739163 722121354 414096080 487293543 841661471 842762446 415174589 510407656 696366412 647061210 659121866 5997661 817621326 508954764 850665200 312210432 217359369 93626905 274629020 793134238 590311699 899831944 739138861 855699994 990535734 856142901 408293241 455858921 354466803 62722895 248425544 337002645 728388090 501337 86103512 900077115 220660660 670987949 323332952 671168268 447126713 911078132 207677293 136858319 631160154 454516143 734408879 9103453 104058136 241725874 617476141 966728228 139118890 949310627 414085093 173069477 452649724 984153471 507751245 260178167 585581738 529209110 71056845 916000577 962483593 903153802 846227266 78513987 192025247 130859988 91477117 325183694 409943846 658317887 467574210 50885191 595021581 956813547 10393418 27283241 624976759 807201611 565090241 359182976 360064825 305401255 330922696 835826542 65157984 957131163 274365812 948492713 418744233 937904790 939596493 208304123 336023816 569137244 977166416 115957441 809915938 943668101 10820718 375427181 117398994 697505276 391837451 106281988 626437544 720987520 223134719 784194465 935252581 145486374 562342808 988744944 199810176 929528533 823756567 882117044 426215076 801868744 60512558 296330305 551440943 635327248 221619336 505820162 626791861 505161488 402413121 118823924 203741564 410734335 622171754 246665001 447519229 388378473 35323527 89816391 361081449 649791663 417286672 758010630 606169378 912326018 323753203 201704118 662883901 852093292 205414416 242697910 282411015 63688519 341720508 844947454 652676477 758694339 499999807 139602582 999115474 502812645 686719574 195471901 857128429 394999170 165218737 123703363 27359976 612939720 369360246 791800655 559253138 98237366 840404156 269187225 225864430 327052447 120638225 878665489 257718194 361525932 385304821 288461239 440194761 122502486 992457309 881103392 722597074 443120623 645204273 428471032 545075102 110180378 881415629 937105530 819993269 96243791 938944900 340884730 656788434 334515289 219634968 841394524 430723427 341865431 91922756 532881305 433314570 675090110 242724658 506140481 123615262 714252757 297480965 18220020 374798891 553793335 139798609 867569640 7135597 804642517 651980958 812636774 721157977 248090354 800261096 22814285 801618197 982967973 534893858 220813454 349315067 298139738 966355118 453923502 466047514 616257617 333896934 31058247 543144117 236478238 21076631 1372807 346621122 73971239 45168513 112701103 271824235 544709673 569374424 139987093 672184465 461963700 944861126 885787170 532740420 717882794 554733030 459736277 342053452 31904708 83992011 144783935 669398691 424809741 135335799 829002885 472467449 941146725 151037668 379904225 760986415 3510527 237874815 865889313 486013660 577454819 293565351 244960551 377348555 920296813 34293043 809199463 583560571 836154828 986159081 466334060 681799838 37297028 580099848 97100627 966950810 529736940 863728319 949808462 233051403 517893553 654956211 433563682 279583295 598613329 421294205 422028713 848074680 69030817 715177514 114879825 80589742 276840776 313447097 361560220 678266507 624982081 752084640 528019358 200830317 470822493 481438280 717482882 32188583 592411583 595837068 72486149 177590848 318637406 949904190 219584761 136140914 660397446 107090851 171286724 589361196 702898775 485922034 133659870 271213457 918944325 225762520 694970199 330921591 96362134 718642166 901985870 622680809 888004583 41731170 588493947 607940006 902161576 190594082 79282086 745914527 590133147 740774324 71566637 881101692 557315161 324875913 32843394 418844184 922881485 452877189 903356331 422988545 633412790 184870785 386615745 451278841 946155561 995409865 333768049 654464631 485693454 626241695 954181502 75627559 600346526 941733302 857996093 896053094 219864555 561460919 878591767 23800263 913663064 574181311 922606346 985483920 545945885 612770271 407071017 445129021 300952516 584639387 764624919 131169276 239670191 716821868 536431504 135854640 57628816 919255102 348119265 862232303 490274542 832759794 735796075 404343684 644969127 122525661 907235108 234850797 700952424 313711432 420533013 377331037 85530423 891846638 862230493 404700860 813818090 429354625 788041772 886346018 191477421 476784420 734074697 394762335 74847360 570022386 738113933 420548983 407978167 304812406 453870822 741017374 595069560 835144497 13052757 368602176 753718336 708513816 911083888 90563196 606905439 347848979 870210273 588966051 663285111 320110975 704792292 44186942 643270913 811741101 644789965 786160902 1970120 846798689 29929088 250140010 189147243 311526483 574938871 776955148 77324255 381788849 943522496 44172356 185374187 521557404 323179644 421112732 643515819 956393382 761526626 581693010 16945166 279398746 612014521 793573081 837654616 578162612 622762849 385328472 526735521 946689701 346612299 619461673 355938387 611655569 126331132 736113243 69894831 144115152 914432271 405086769 89307465 936034608 335702448 222067617 89582216 452087921 831964193 373685974 251697703 576124360 213745208 712109743 579976119 247865181 717380319 924120381 787566875 432427980 677342867 661385289 351403786 67617448 54514150 295532491 166563216 439739124 903195646 3642996 44418701 864862632 996941075 845248037 748788276 914873394 3554548 960629878 815821710 730021106 681826179 366515504 472684277 500247484 428714292 297126099 72482457 470505050 739142547 508688145 113500926 453285640 827542459 661623633 391977340 176876278 938368223 94331181 193365182 115367114 767441604 101964532 174957380 431713051 511266373 280760873 255820257 349994743 574435790 120289282 754565181 627227230 525785058 549405161 804890451 284692676 869509526 471977471 182102004 522221459 869263123 930266004 942731587 253879974 540626967 802683824 604409144 222666448 262405749 958605198 280689949 187118163 672683152 739104539 941445139 942516073 848040420 609608571 952353166 3454655 637250430 959968645 990137301 401202677 537770111 386688578 64800899 802780191 863484572 761616242 559054089 598269511 657872545 824243206 522967337 42865128 831941865 687453863 198043004 161470837 78717928 9559598 998727662 26843344 621907618 668484138 207214653 592086995 301889329 462739805 821726845 160406731 447658818 885617215 578640278 684238071 28547224 813911930 950414788 41031437 114740104 894702700 974514967 269605814 951344508 627148200 137181681 378725389 360739184 481061237 585567114 999400997 371492984 960096333 921781359 693126528 780557368 67990368 390795007 255352728 727962986 115425039 144820717 345011801 530857564 723907953 928926913 755713701 295741807 16083665 555869783 518672079 64724377 994522669 783617374 641040160 566148324 561060793 977155289 925601878 964420845 425444698 580352162 130904096 785781606 919424300 160213474 950513059 779756692 277898749 36611995 259404792 754641873 785464783 505129246 132751019 786309643 472277594 75388053 512783422 999025219 65218951 258473850 362459812 966017040 241729014 872324382 100559814 977145369 701490041 283365667 538731521 323830430 85184919 49931266 784149158 517436912 812323850 363328903 647589497 634461429 379395905 873194320 822927411 451498405 624380127 870039889 492421377 635270031 130926138 4698706 341023490 11643989 904684764 478588527 912081868 646969899 379808518 896257943 8669927 865799260 695438888 258312207 740369488 188353477 81728362 184134380 134675704 831265624 498306087 416127644 545798979 896323739 327504492 912050014 941842314 504965158 311207294 470266309 818100889 20961833 163914833 618575161 539483697 33333987 165107217 337970805 135139207 181450540 79843485 926580234 536589763 164310764 1619719 712874715 50487427 290987425 384407061 239565471 146669653 695783646 4982979 652802147 973793600 628193990 839636159 71706373 108641084 136961685 538106604 6768570 184665781 976711448 170878432 819780744 359154956 733804335 129134693 93056717 691430166 912299090 4280827 575230390 566207387 388694793 51723093 657557705 816409048 413154675 734632152 691132508 620334589 257065408 789438239 761978907 965392816 790194359 248612217 872546182 84438153 658481 794570345 734156400 226999956 479394204 397831205 305557889 350579922 185163384 442791192 769202357 184015800 422064349 41532513 895102940 98628526 791988212 991695954 629780760 450117521 605283962 392168177 696620385 188935985 398184256 599189626 587137796 638550484 434760109 756092890 683920928 757502129 980105786 252553014 574218536 474458998 19075829 539040354 677734756 877776067 869835263 509886827 823544687 887866029 131332110 811442446 19903930 648549692 553608940 277176638 95596808 197019884 946111989 514137506 334699248 641557808 972321437 499463700 371122783 429716714 718799080 660399395 594956307 549545205 534607856 646195346 553039136 869722268 587138147 608189399 327154543 66325023 273273091 563728541 109473850 656249653 998594852 312964930 609962130 757361029 961183537 960405849 411218905 657677612 513486631 365586986 8626248 384439098 628554007 95402797 350465898 936209972 532011945 555716243 262144159 285685908 948200084 701700029 899464090 938450756 415245607 379894210 588971236 217260583 142540995 551430126 24874583 199532177 205058399 546235965 156447651 183549385 271800323 820482020 235282636 723502478 833638221 734643657 468233386 158732943 64545775 707576582 996885351 896281842 575329070 169429866 569533701 55105742 150366053 161660919 163149270 173459120 494659712 865864037 360731394 295384602 947978882 314695838 355475204 591157247 63000575 629062976 813147693 790602569 922456738 940101662 369249568 261167956 392209321 618536895 390485844 72195696 260894308 104289502 434752918 367126626 449004217 900600040 726101636 925243619 839872419 566258305 918024466 330015776 753890734 791681535 53699849 46681400 952258429 390664685 744282499 596152513 496607813 729026442 314720625 167059780 675735631 961456968 871689749 844335036 723168633 561313613 15505288 921943579 845907382 828341749 948939573 788411846 690381194 903445070 576749148 193823252 820105358 211310746 613994128 548186322 618682354 717125329 525490745 223298754 327372534 267121948 564437779 363005463 884943728 941354587 968758957 584324858 391567433 536446624 927304940 789383177 870132736 72006578 476462725 185471698 444429093 13689739 336892806 571859549 868012767 910236378 48866253 147349407 467580775 829435266 816108943 649639944 24857227 954647833 926839251 980866550 837726764 357187434 633023733 236662591 762437824 579257075 404718371 811648940 598034896 444261736 330606307 134788984 935053435 446842926 677229451 524786133 326152178 897214177 905494472 134031719 608883194 495271886 768840216 807553735 329109357 63605882 172870992 744486145 898467513 597813273 554398486 67326486 513924703 256033303 590389351 345851259 372911989 647759507 384605203 934744728 142011941 556216031 386570044 62821707 349126188 152148482 586118619 36238946 260912987 949929782 34639675 200601124 601529882 277090922 988594300 186434761 703898592 918736576 877451025 963134717 762474940 305982736 606513986 996079713 543461071 670383204 292763307 290436618 454422224 199427194 648308923 540164352 890129542 92530757 568159030 884947136 457628754 596848236 98473140 739597243 772001442 284199370 723359008 790315989 555482239 167384556 431673401 831127271 999977472 344312726 863177236 393363773 213001428 342409022 636499352 954912280 541354173 349517712 166590720 162909740 957203983 571978216 623367261 348906532 90472501 567582939 657718802 466535706 400346157 175214254 371077462 158996767 621173511 620137437 513754805 372540345 972680809 399366550 345425039 879491167 612772110 316578875 698918808 216219903 131006786 938312164 813992278 728477305 715337064 490228955 936784039 633759522 625431156 309840926 755679288 880768834 622809714 382327776 688922382 884160406 330645757 858877960 199364865 955728846 381029320 827504304 711411004 202538256 762240793 540462247 486283967 200940659 796149833 585976304 680020701 329424261 687602757 277634625 517429182 562918598 776132624 242697605 850898654 100109355 589519167 976638554 939366284 397985180 824583291 468554388 578065772 199499126 596894723 300449208 986952950 570065161 951658023 697177474 699812853 3558682 787700174 321228383 972502024 40461411 701282033 158852083 652890916 672798735 556349725 684260245 700842512 782841406 672997365 635473102 927409383 111245447 697218478 881814494 396749210 465024113 922514322 91922487 541468268 401055736 750920830 325493504 787213428 933878799 836542307 742749075 995950622 397635864 484795848 372656639 199523754 220310893 566756422 281118086 176731564 576286683 664273675 667640608 786440586 516737058 343709272 116614647 313678849 334371702 801293571 118175209 404683169 146523393 308440310 491080202 951826252 388676703 354628526 470317343 129089723 546635296 895424700 913251363 293872889 136938569 596731464 420857030 117844710 748771539 597152649 418897385 888352693 660250667 52843342 630039587 525823342 312447408 460655736 383155263 1538925 863533625 305749629 987523004 403224801 282665100 919087591 160675147 595326286 545876968 148746963 124751189 112893707 274492028 229728627 72673395 816763845 174213101 779284108 888794100 817268474 942016980 709950457 667311706 957364351 109065278 49596710 341807069 48330491 244035114 170277269 377497318 133425769 25085967 169088349 235256469 831926938 821790291 239536038 885474620 187842481 748457429 648831790 9063650 50228901 40324708 399717063 599094722 909760962 830867781 221593046 910482121 695692072 78054321 143238870 971868187 712819019 46870356 719671763 449172366 801204081 722180304 999442672 477233965 313033783 962001976 364056289 573913014 34535949 525421461 326265713 133336861 997813173 716291428 229660158 552965895 556774600 752987926 661233144 904872272 270908977 306101135 197926757 494036101 169005231 388429224 751888736 270899307 272247639 279975086 455917206 114324086 108924432 39736032 434605511 280930386 153078294 330268148 941771851 43411550 204359288 191804306 740712586 454207532 150936730 673635288 150879875 71533315 481151156 542087124 241604678 828791389 400259664 309278733 956325498 174622313 423785168 641371899 241347800 458133642 3495909 832898442 807349933 393042390 768697369 563570588 988466524 603013015 524191047 847042180 827111130 800942542 624600349 905675659 778410544 3252139 874615201 369796206 691112445 659716630 316772265 467587038 137699570 752212522 516276577 125857279 771430996 838240180 676460233 904812265 102568573 885493176 164304437 376224042 477824858 603912429 758026955 748934211 59034350 680160316 262970120 292559142 171776974 603840324 483564860 106036927 346194852 360462041 492619785 279669352 179627437 852756865 67445480 405389426 620520250 587182070 473746084 63867043 203411507 769675174 833501148 969238707 766856591 863765302 674175365 777703630 494648797 787916027 417124710 597648917 831481790 100801919 721867931 223095580 130102888 921553922 783877139 141433454 577308709 552724214 373060882 294174468 884298962 236273282 38544815 614729938 993476192 711203585 365632855 419800891 105602391 585353600 838569288 989589911 666440526 631817795 837418263 224600500 298247540 16773952 890134827 76515410 11564298 786451106 410963775 777943462 641769447 822559559 299898084 908080600 663417587 678495043 403915260 986183045 593431724 36769371 306721601 270929981 743265188 260860043 161086652 530094342 617083648 757638273 82929742 439302359 67239675 607492639 176775210 409916702 84623713 641036029 108092249 655337019 618403348 795561700 88965685 557180418 803568011 845591124 370337006 689566269 849036110 50993407 591801864 431116072 774583931 340350028 577354459 226838515 851929156 641456597 882169362 627054404 462275183 541658089 578755628 506942898 460552661 556272138 820829182 275416139 725698787 915985264 860752688 461104399 497365532 746558341 624635067 588930930 906414228 703670887 725508465 220105438 619380854 471554922 241035381 826584367 50952064 510270867 378874814 35483445 27569538 100547101 111700633 150042933 753101027 480021752 517777956 479903593 931532572 441764165 502435284 961630331 11735866 658287067 333334000 370690062 607264352 500570054 901894163 627746101 91534915 123707586 991002030 944852218 154570668 993504708 388483203 989399257 474672890 634345330 434836267 952253762 342115485 653667494 295627154 547178522 911657884 750256879 361124213 321522490 754845712 255099151 837056235 706649839 531011495 631153022 978895065 239460984 534745634 693533413 482686844 975134348 718600151 335393956 29558500 812287953 827509807 385924942 552084339 250598246 393691689 42529064 224003681 251011930 836840661 656356013 385548347 11648306 605553114 403176204 587494240 524477031 388345330 555385000 819243651 71515365 332847976 18108311 425359660 705031054 864955041 856104996 31224375 44288693 686272656 331414350 909032019 250110116 877740351 216595782 505862787 660501014 384907853 564801013 401243297 873450173 700357995 215267188 165186518 581389757 528361694 870603921 277417252 842785839 994302464 23718737 718021596 802857887 587633087 361938792 597673512 25390223 467233565 239225539 286876546 490647794 810884014 981540863 575384891 506884785 74131485 971087599 659051253 800269354 111386279 118656793 283183913 208607916 248050590 410997817 14035874 277936380 879709671 910280894 867452928 10522066 867245949 838835272 452244535 829599837 469504492 947461168 904732429 666636475 269825238 619483136 208513183 796205186 201210994 697768438 44820700 373638458 865074696 855797638 854318089 501582561 820449398 131795925 685197627 347225701 931628718 288591423 834311392 264845357 142718517 756865233 663652151 668747409 725616038 630640335 581497043 119570013 665120045 711850288 521826588 822924114 680252685 24642333 12785357 799591589 377448474 772582006 532033655 651152767 859797568 842614348 838775549 792877435 289760506 559262568 670395926 487348522 72414171 689880771 637741263 796129938 922320649 27054604 85657606 188779435 509886908 691940389 701033712 301403361 788418244 78144934 981608851 48497557 387138305 673687385 283202893 371381404 336842728 15471804 622759755 134891198 403687429 670517890 936564499 249628472 322403187 902092562 282056443 707818043 471375974 304863495 623765167 226450282 83061153 252032430 481157039 344828512 403353856 651184011 592966094 66788648 458853872 808335572 458045364 831866563 202695666 92834804 262712669 203878310 346064668 334334474 985935512 827996729 210854551 186718055 999837066 160239961 41271586 739073556 678583592 914102486 892636557 58715209 811515840 851979254 153247039 50444023 333832561 502141424 246416561 584156736 576013485 606473842 104516593 167988729 86517438 908771868 566570784 955541551 613581887 411106563 952616180 688662943 727624607 817145647 937949495 727575100 981306274 926034205 664941382 504651692 714685919 986590269 607230098 198429132 192445250 767837557 337106723 987442472 613521548 228767132 641719312 172103043 816977102 693445632 447419400 815486037 557802482 150909665 787854796 33711432 195356978 893468147 993223858 11103931 592188831 534365920 391597860 204553279 759586459 942720452 692099871 706142492 856684639 676711855 83591349 144121549 82401910 228097830 563100811 852218751 358967360 574697635 62922843 592881815 760324976 878194448 560914291 24507177 243243663 304025680 633278261 476388481 289039223 683436983 753482133 283277470 656371160 973047436 244429214 380587698 862992310 775324814 111583213 32756132 884814312 885394540 234840372 30925965 764156571 292605516 927854265 686372670 97889230 258505285 786000596 719758521 894033364 706574052 554431861 904387508 103280085 857057707 185384603 757950746 154504268 974578573 37118174 800503433 571136906 699982196 395267558 680652500 694400562 423498428 653083889 686400130 601548731 578766261 909820241 356328525 225444081 188489252 683596012 767981989 884987509 556000194 492428986 732656427 625388344 441736380 956609355 782888246 963865860 923947569 224629054 515105873 555670259 922498744 546174411 750190011 564899830 726699223 930419514 68606437 389729103 933626253 221358954 300291320 600178967 756580041 335313995 585326924 804501689 715354096 296126564 783691250 181786997 142192219 834720078 575764780 276404446 640223190 689859638 531108079 798914396 999191843 328292447 240787816 508330667 569309301 328706462 777552756 500356186 946633205 810464476 517604646 912637517 832572993 192126616 246544965 103300412 558331112 331696994 474178763 515032882 707714287 189123681 652493671 404742670 879913295 810921934 869782524 298895365 264384372 467674999 256283680 381518878 384399295 981713725 212149662 64138421 317977093 630789526 314224884 703866872 214948367 129522700 876400086 98900589 114593304 241276859 833803689 280655210 631202642 995894231 285077000 356108188 689964641 151304228 28938563 824664961 351749086 315088252 239365339 310562797 204242645 685730381 641764360 357907593 378007879 828453144 812052531 748408399 524164777 192966899 808338812 725817872 722442340 448332296 564813621 825536750 390654547 480480788 24272996 983065314 511568199 522030313 889358917 127028535 759422854 894835436 342046406 5752589 253658952 35435927 325404426 620097495 98844473 838769144 564497383 46901213 712386298 445887281 159078503 235028667 953391520 462613750 354128971 800607200 804503603 137870354 86322307 664698128 989233 506940642 602730423 574894307 153224712 882880472 202720961 572419907 269920671 678517241 361781041 959314930 647003342 990638944 307405768 892985602 593902561 204723641 390700797 704281435 429001753 679725254 533573499 623975736 839291435 730985694 399862433 898072746 620526783 98394473 12471553 323665428 453359858 313940837 682059489 33744045 712935124 912349156 268845757 45847297 246034923 231069836 794760643 157676400 802012079 723572245 755481685 307214510 597313035 314321615 847645835 968535105 369748451 215633689 322209454 691097351 770421640 514020331 305139134 196416941 802582853 331753805 779886573 993226552 225581014 509923037 532989730 417152896 709266156 711535694 94138231 241831344 231484842 239635939 549737404 433601736 620024107 416996088 543213553 247698971 193009914 594536570 234976720 448809937 117505431 642886505 44505920 185209702 947971833 310952797 662857955 224631849 158935303 90965247 595737737 478528446 650000926 859641995 740436411 272322717 463455630 759832660 76027953 553950864 842562077 446912320 903661148 218371385 961449090 936937800 454384093 398722186 560844779 606491642 705939468 741011275 712523384 147113207 517044338 173396375 493181885 34825333 560043343 391776095 109702468 748110781 39819797 505898213 39610633 833471918 211603434 28389187 812033532 693399353 753352234 976184546 357712002 940200931 777703139 746718211 338873589 64093254 995805016 616724794 999514143 360803983 728479871 735853549 257344963 923142914 779954563 823486169 100053780 635535474 161640002 526795918 778731836 527823049 489155535 509906926 783139799 22920070 338348273 415805618 494349685 189076538 878820003 676146661 80550427 755009290 342004882 224993894 743960002 766785840 43832226 464443755 583104215 989654906 602693738 910342393 344249530 942180553 531995571 708681837 327706175 935273108 756206332 264084214 644395568 501712226 120483577 169767960 661579208 945117523 844997648 823349290 649174329 868502168 440261338 596323545 508835367 966156791 532442280 516080035 251680812 187108680 693344764 17423965 682955602 217902586 950544651 625281966 534531228 396283279 85661762 169428369 341958269 817402395 683497150 609527767 487746910 874747593 960060626 501024931 112601629 168503382 460812933 138114796 482130057 422766484 833126417 643470078 187383271 839133161 170881125 446753529 491379056 85333965 112748964 477991248 954439376 29126991 974498212 286595916 801006761 609254545 222873200 354706823 699709198 841359432 566051527 868686449 247285768 926344765 50955418 718549711 616993301 51925454 903373202 31724086 128055972 570754669 935961991 988853652 928874138 305044000 526243082 328678824 761103055 628997632 313123292 213466501 719622802 976455354 911088501 503635731 141973537 910767889 505920382 137685902 909146418 656592473 102095447 624412165 156641133 131941118 548040082 296597980 738903792 136671995 189795958 461050699 367260362 608930403 673393789 487227868 24999808 716079580 334726102 540271345 719206282 108175135 594663395 407796283 346922455 25463674 154872252 394219588 114714693 104056910 226545323 282658023 349692458 832592784 705688750 205254610 850002126 957352524 959711993 61384459 911798766 33809182 130220657 19819880 229068859 760161975 406152241 332914965 7495641 232475742 111092233 272748050 577628896 110530668 814764282 241978547 240892895 418785487 158212027 149993502 653427284 778724232 688266551 350146768 461930805 622029101 446358285 366606617 150606186 721532775 18714127 512967067 468165712 11145077 615815875 327247311 492943927 597863592 354855909 528487551 989449957 756345573 533764323 832086605 790485010 150114598 139089504 894000171 946494442 803436537 673341105 79641569 27855758 472920063 849948771 973803147 917330835 762158702 268635315 650037016 704346241 486446480 848541716 226965196 611361109 602788162 930887341 582102974 605694975 444529526 209689304 341399899 586622949 648871601 87232421 79564513 139777630 408246413 940258132 414638565 47884600 511514168 393330655 189310158 491895091 902685428 362868590 796258135 473423492 787226261 630696160 929755921 454596947 533863942 773391433 26081758 695094333 174404036 89705838 380109943 834290898 702484577 664146507 831415528 974332952 465573635 979845517 564393231 570716422 876931554 598621977 488784160 393809162 561879757 179091587 577137699 671871620 352820646 574641560 735474805 473757513 729839841 905275092 731277379 490955040 94946825 11237868 71791122 620403272 787071036 266106950 262870330 877558768 50841770 184108924 402754662 991657150 496644377 258041821 864222229 561855817 140414564 906534124 929796380 695401119 545855735 249606111 692485410 529695424 882127701 941089313 410500387 513549088 238437523 387700176 933652974 77848873 388357850 332533312 161503399 438725303 874622440 419261046 656387397 572779674 876287887 492768173 807864597 955183895 662504501 854301653 442387765 730835560 807538003 738965007 430282010 612372791 685260279 295337778 236048651 436591911 89080129 360397897 243012259 582912331 508240617 711869203 552426835 543948973 664395704 798473346 65511645 420766921 170766858 882672956 328106970 679725071 296197203 923613213 377486389 103369828 435583894 234072755 763358638 613965217 303839727 191423425 908214361 220653587 50729227 551858620 968352028 1574137 105563819 224627537 223226420 879239434 314367269 938119645 251455920 876611308 651663843 515212787 147743221 969605054 447301601 570229722 682165304 709882255 413447731 380808717 555613959 28846564 914239613 51733433 405169345 77032502 139105657 807368514 427036697 647846514 536285045 713808062 676138135 989406071 120300242 354349688 316067607 304144283 103072902 414533999 867049031 724879655 8258203 691199444 738858285 107153622 226099886 745688464 676203936 417029722 370280048 908202683 119903946 769064663 934950441 531170342 945288620 660721510 829628208 850810834 325760922 722241428 848081524 279386487 970318523 929422816 306309878 649748222 887808650 186970688 459030092 944643847 939369048 184342172 822662944 482387300 126396359 819924818 181686703 538754460 610148688 381203377 217149003 627110249 739848382 117476990 612652506 525781818 827793329 989914738 480308308 557825202 500315677 867087545 332242248 288344871 891117768 803916660 557343320 840249380 845893071 566602808 356856248 813541351 426097953 891131021 879043763 129404388 673577730 569596529 179825702 178861376 250007178 313377490 536935171 182691670 753980452 164918295 520717520 575468598 948244495 830169240 811467813 684537121 668325088 319959329 470074162 411293966 767782910 941380468 398775350 526106408 976702501 703471811 383134217 990847310 924696036 130366010 159649939 172161170 239097375 12687731 652981586 636891579 580496525 645456127 29373401 786290115 868133435 706304740 122215499 16345177 522367495 247240474 251939300 743572575 485650726 157190157 220525424 283653741 463370142 669629726 657758674 802387276 310437580 158283554 723717759 121558653 495139808 350763745 283951616 597562544 960288861 98047896 50478708 848412237 913777818 850017144 304589323 271326190 806116931 396048933 535927692 617120995 690510040 883210551 190049488 143485356 655402028 118235836 945046340 529572483 73279719 90047924 356929643 426201552 858406661 677939348 880170586 704915634 392281685 988658116 986940987 78217085 739195643 140245537 858125002 745879094 712880111 24278395 823366363 975348505 278842236 989953304 945902034 814454036 645138369 55140911 448154665 842803785 204765491 764788334 346007022 550243472 151347993 225127029 568062786 725111282 372909071 515003993 1747163 164196143 104608388 796715042 402501250 236753465 459901244 281933901 263503766 416482487 44222926 810320458 779554184 511505027 770565926 370463999 83042909 449367084 967441413 267422019 306440495 495483253 44750716 845365860 680500396 323653076 363193205 777649826 868597653 634196724 578942250 167783345 807927105 665225523 905225132 307595579 886383127 433794085 813869661 393395548 621814295 114769167 172350326 334891300 665534290 780754797 966901378 649365273 955860077 501538668 167904993 295362994 893991715 961235056 56606278 89550301 68155072 652670864 411315002 412910457 480603814 580366357 605979030 589832157 59594956 632387583 777022221 864690768 56439866 945793152 199094688 738878094 414624654 635621502 706941991 893407561 75681658 57888533 961671887 2620070 720416579 502132243 623394711 871385276 252374852 458510459 265601234 497262105 497336681 889482499 314526120 669146172 663155636 859579029 953327252 901411868 416184508 637043409 222475239 703451807 3961897 630380682 444517956 745977636 850392377 300653125 481970466 340494842 736122687 843453117 615013197 707674342 391495710 842958689 913760102 624894369 746289874 596980436 928947294 728957528 366169575 669060461 317988863 648316970 855197184 314171317 590788451 727034286 967729746 787900139 24005498 438266730 288722726 118376323 353339785 613228637 269433946 972956066 123321766 173510262 582694881 101021604 304972093 373299994 213611582 632509591 257854862 757929378 462790413 29457085 638784044 282818010 798768507 28599310 806883199 967207556 753367753 886936243 681770819 373337043 551782604 818880908 829609223 879568368 536278128 448388267 428943535 813139833 15311920 831994839 823398643 903500797 251365536 927742218 530868190 217639553 25375460 117205236 420493647 410163198 440559926 204469109 635159419 736710624 491771747 900246055 582206825 548242057 849869134 18546385 571862388 746017740 864854380 416228853 317258189 348373362 248004935 128665923 317284087 146000824 407144444 259079716 872589897 153788879 341198524 571956272 864343664 907565659 632012622 146944440 47549930 349615093 211343500 343895613 479367563 465604009 510547169 56691446 678927100 60485496 700704466 464967503 432109879 17608919 75807090 334996836 320755469 205335343 742188268 378821770 258314144 386635867 202433276 267585479 709258985 905288493 329901430 929903189 943208499 176882153 539123902 392739 284858014 626592967 442302031 993965140 855941533 27246709 955237173 678328253 646919032 895465620 683197586 991355243 313869259 934895670 495597084 31662875 594614789 465389159 995692701 554435009 427450346 173404321 810113650 437245442 901948946 460410709 660823053 386481849 287810151 150176873 190522484 706814325 311874731 641332661 138174911 4395770 752460016 215220613 177574301 888158140 884623902 393041178 758650320 24662631 580583024 176660265 405799596 295239257 249946615 90582618 284056988 724410918 803090198 651941834 666903965 175932436 778761476 369311625 364152258 348106908 24012365 826342685 196413870 899980015 795775313 711461886 613865501 209555311 550482116 219560984 631933275 780848689 208929324 712669772 325377995 556025730 178651238 120873198 295073377 775333983 158092834 55456328 333195560 831362299 442688098 406337302 751348158 767544637 129657599 952100105 359935955 98533183 829725988 473226564 81333166 226477520 380813265 445150946 835802792 525712115 980295769 50092398 621210030 195368030 164727012 808610665 607452611 884368380 349113070 196412615 326440572 213738604 628140486 269592946 234878594 737780095 834765584 219478470 115046419 584078525 795166532 851171603 257640834 470910945 514169900 44873247 668093363 958879065 930914666 78999457 55257760 73893063 163031792 801602759 448866262 165538690 19921285 816699313 155531512 644430102 392048967 232658419 947665467 765507007 564409892 783083287 177823977 47145714 126166623 959039769 981494238 345016277 515416850 128287465 24047630 619257282 557349030 736461548 259888893 18087112 135642460 354643324 920127813 732388906 943845319 357083491 169946388 617357022 394054992 839136868 857167531 728733710 465627825 374032819 330801888 223011739 779092090 299629175 599398813 745174165 557533584 422180943 351741023 417383364 287142825 296883146 545085111 826078754 70760913 967381741 594596556 453947231 807017703 263694258 577064408 642564188 89798176 923769987 11863207 928619952 494058372 371934915 687415835 731703846 19390572 960783173 911775658 755507005 626079755 670951635 685008862 70634407 777040865 602980520 634417876 560516554 47909449 54271222 91260606 32215106 56969453 695431522 41942113 715246685 235705676 478130051 533479319 933700253 43649851 940351846 131440079 718128954 57424225 344002061 38212232 591730334 882239417 673099755 563584473 548388327 306692116 805783401 260984044 616365928 279770772 245179749 630716543 872408360 974372915 77728174 800547170 90678625 493828410 174835081 72420603 991128322 792461258 815329839 525576133 107681838 265457750 268337996 365927884 159170235 303533607 965198210 171000114 905125556 17802199 191359204 252484782 288458455 339587030 798513531 923685384 260970264 457224937 846281157 84583070 563094812 105634469 98979121 124232163 906014399 260542968 490978468 675002330 867053711 945045921 863396599 844648863 282978382 877295283 255035254 519110622 707847539 541193494 229713506 813962586 792358826 550663174 931683184 230773608 41802064 150909074 929177161 977579633 508442616 90927134 904781064 12372084 796445928 746054881 438455999 278172033 668557724 746437736 158141426 225574463 669229634 588806673 216615193 105078375 456700989 519471505 803790115 468160838 828134051 665595247 39507950 510095423 607903423 852845958 29768912 152748871 645660815 635198855 466387729 993993575 66150214 972287349 653401710 173206334 849518028 333867559 680261016 745880444 123955513 672464329 433693363 299649384 562269021 718917723 996220888 991240539 346049852 305279537 682226579 473846083 499665802 515186801 247916901 155693345 986959155 4210584 22220867 517269387 315441622 179707381 507039509 469284395 54302788 457075757 17381688 504072254 102580998 90139573 891875581 368538389 66239701 193500507 196616743 431733399 323264800 916727742 444089457 984832445 766975625 982727633 958251526 473278741 87398760 54081884 507705351 552393025 139208774 119676795 995187465 759614325 496365156 394630429 575269780 663498236 642676786 533897094 217546917 634481330 324112856 970850509 733290028 632949131 118336432 901233247 561808271 71752972 578649801 495331706 25021478 96717517 755531110 738038195 882276796 874615805 439955837 719275377 945278228 221044701 125117753 829203055 875209314 598527044 296630137 129891390 225939918 798767129 427017294 529026752 123603445 947651549 141688705 816916142 122929255 601261087 440272650 646553620 107796522 179617285 588814746 67877584 510331957 669566921 239993618 768950550 343693814 215572282 663767818 541294062 382648781 327669303 936682827 799942068 224142735 271792440 897364053 67682968 469753604 528572357 599344602 745237788 996407400 273531644 166688065 720232601 905084654 25078799 119201828 245966266 386489144 363019972 165899986 751884030 689651168 645412339 744619726 522386234 373775347 776745484 82221390 978917909 107165041 823929742 447132092 426834059 853595086 431038865 941485625 715149163 281221748 519093309 454517269 712269785 497469759 125951825 988841048 824505804 487219967 734959261 537454141 125621393 335897594 705210504 782000561 987325254 114357863 302009994 504971736 817016160 305676531 545639859 123391881 748763430 44657472 982604579 746857933 238157875 750009442 645169296 824657508 562760696 573045088 795841219 916377151 994093623 890112441 470963227 627535367 676232585 552592348 453530376 833358485 992460249 835073454 238433425 326670712 276656359 850050312 365512399 566674802 437651655 463231031 801371503 45982459 298760287 91986555 612487220 303731389 313751532 276021896 605193587 958506518 311093117 495590151 318982806 838217113 775017847 525315862 688603290 665561485 75238159 991019204 605596816 258748524 941652179 21317014 717472799 507083622 403306786 614981893 93633024 867604700 926693039 151627006 786738305 765298405 899563266 491766880 344081411 698556364 693575926 257339777 99483516 115803279 884597052 380526762 729495286 214376802 677497559 106139798 736237582 860706858 636271519 403010295 326190710 979053827 385049790 825531633 587509875 898996923 40657205 116441501 925531999 994363220 283074648 234117768 68753448 495720581 57157710 684940337 679694288 40568378 195456658 406763662 276463595 413778192 887953525 709185416 995286308 491254490 563373977 314895226 839458744 524760351 728414839 84761526 481291769 852302745 312269018 179472128 866740428 6756023 605656674 605279761 951832619 390108188 525023491 939815957 451455908 390785310 409339267 328774445 179096793 747190599 965859327 730133742 950984702 6101720 370066022 578345697 671968350 443265345 325457148 72427265 502672599 278824362 687484633 666967104 435137625 858931054 408670312 550480130 85612650 265438874 203437032 821805983 749514149 312605299 113618926 490112229 44489270 55496685 88611297 56931989 49843296 991164980 506120317 974452706 151438071 869142823 50838609 577596405 679139814 88850904 754155585 684425323 497977003 934269197 770504196 246543829 795558614 994376642 693365415 154757687 509600910 585352613 225745672 86022025 346346763 699776409 9082459 959809081 57801501 192431667 583400617 790930343 992775588 858741312 297649996 440884904 727121429 589465405 104749941 279224836 935960828 786976734 5471910 217310456 860684916 36543624 977621304 853105589 977318064 795291606 765234391 621376479 166428278 553629463 785459456 237494030 630655903 984033486 151576970 589877584 974777753 967321905 350733082 574639013 206307813 492184235 820631981 696214146 294874265 536051291 317722386 881480783 877731038 462284947 710766445 682203113 24933747 841645401 777003446 612320032 732313896 191466729 886261816 350156602 421047140 258627632 629566738 655677295 825857696 617670483 426499257 154172779 956456682 352660006 37806708 832399310 723955299 458576566 371145951 431031983 400227265 916537792 500413545 508939797 585883854 861879095 125684694 817863293 847828199 18114 592005309 906871639 407407485 682849339 734022666 852088713 522000023 988070961 79262846 931046890 235860815 52003431 309198122 971197896 879983185 971130451 759917048 833239395 536730207 966754208 226597410 711422063 111211727 860568748 215438009 255288470 195491339 851272970 459573023 294240244 580243472 867771906 45202317 119208857 169113840 980853516 483512206 925837323 606047568 587032153 283088514 829070273 709057770 128082250 451833884 914981289 552411404 244283638 251234020 541941155 261788952 196326569 408613558 138140931 677559042 589623903 860427586 293274387 39434197 775729485 95202442 44677006 991003182 585582681 605845350 824139559 117712575 769287325 69732355 338319360 135456462 106364392 706289760 566335539 808855219 75412796 668252879 884220493 644603485 942505809 738687098 461069261 245245902 768908561 150971868 921445802 130535322 156581914 840582468 262166730 931151724 715539263 352350550 920195724 553703042 640578311 964055433 879885119 676744236 273360429 70957737 677620392 716733009 765682206 659341654 655526017 2279913 178054014 634438788 941194996 475385220 422565027 561553402 355508516 563445697 258516504 275025107 816104356 307904472 125650204 316981247 54119165 784267281 627707425 76920515 720709677 248808011 139282765 834046773 691472163 551352950 908525820 768858305 771744580 437875993 786800188 92819623 291508713 105894349 142735183 378968698 401589983 609807295 622910509 431307426 704009445 608763954 117167359 625997531 872635441 331752187 45580453 347499700 956371180 739569923 991715633 171314193 558001 606758089 854882922 31847850 436466706 282588893 343905866 879009674 402331923 812752486 637505408 380220304 14933421 899531165 545300975 353746929 283439436 432686672 265954605 441692596 630708306 889303136 419370757 428827956 909532818 439404099 16006645 12047522 551202773 864473986 261239217 997656705 939430488 546216764 40399262 844358184 159040844 997261986 603994968 780340804 228989781 663096185 918335788 457508179 634028812 997337243 499821215 24496169 151690621 153920630 953407205 126994543 679372458 868990347 823879530 350551839 766455814 291924720 530055757 813190409 684291834 481577167 618982112 107620690 317227363 334330085 755856938 152258544 284648978 901373188 909420901 564712495 36592459 253296529 312891520 842157871 954478918 600707078 338244765 811330147 102854834 25302385 169106580 157563411 696099629 844713715 208221551 89353179 316679629 499524163 645683436 115048746 149535642 631898665 438938110 446199748 660369425 362597635 701038412 463430209 310054307 733494595 819317681 647810699 720483891 281469934 853933754 57123940 934428060 854707486 135791403 108892126 458322473 310571138 788319098 634308576 549336347 478783449 9770579 737939112 133364007 684797819 108188946 20262468 202153717 833084624 376863308 831754519 756884386 776013014 963264070 16283227 302942015 36155039 573149564 222765209 984512847 879568848 618511644 263918642 869611853 546784036 559930760 797280218 575169828 28897511 546987736 133415191 900491701 207256956 815088982 387654854 204023637 78042072 716483072 713373591 783735883 638162436 471292681 448728204 707200854 858451358 14951000 452818302 590439462 382036568 971255303 801133976 384981471 909964408 210081509 183125466 814709657 722001751 410837237 832538519 799177442 3880418 280165357 699846391 185784378 393079580 117089208 626538358 945991061 685935258 471829236 787639395 345375453 614285573 124939637 969460578 595002990 522610844 715690688 483269867 811006360 391062959 153851025 792164040 328785697 924885285 716968789 811829915 92062656 602290935 446268080 597295190 465162915 426544307 300265977 713696960 81345002 3150842 223444665 718306807 140539177 837145346 892278064 984304617 502364650 826172692 780584144 165901529 172260905 320598799 311314112 356704224 366733526 56631267 339362906 942853482 547898455 913735959 20643245 624037301 398477059 531919172 180834299 105289045 830417320 140557464 862681660 347987891 129224709 6724436 24295322 371277705 694047057 835504206 876985331 77716839 162839218 698248048 772311131 520437298 460176327 723258935 24397719 992967584 579787039 307445813 720034466 347747005 837806784 577084815 679753003 32919144 704425633 861473151 931418134 143518678 744806703 609269459 722396663 304858895 553817036 147990636 300179866 911330156 561578315 654739392 961900670 551333919 697093238 520675161 695887188 134077611 820177544 890017108 324194949 887450472 989108 263840739 959518890 984514049 586221980 733825995 916318994 701191157 714564058 733043431 246161471 266154777 645079674 831534243 165438057 368879124 382284926 534889601 209837049 245758177 813558361 233416344 952382991 417449297 261155957 715537424 240417021 647312262 998069165 140747175 677429450 972169337 594882003 749905967 188521393 362499702 116514347 50422029 316887199 449576347 178504174 554759868 400618936 186467420 928495305 973110088 110235346 432181762 920826203 119739092 984102392 827743015 258360250 128999956 159307240 651571771 946524655 366972627 885319830 402595331 402009717 913017455 256911783 867331604 169432254 684489816 98351351 868776796 722004910 57582229 18174227 470779546 45818910 75805758 765875136 46123745 637987674 293026819 753106546 703986713 744939427 874969763 921684693 653345150 630105262 927275894 597513544 979899423 537907748 437645540 418942813 124461408 280454176 324953836 928554075 130775416 105840052 493289886 794353084 97628660 584271716 495666081 111745967 578106930 655692201 80605358 600284055 676954087 691188591 230240275 926927498 925261210 71135383 493404976 375017426 967160614 965989494 897031165 766659440 551427132 514720852 779744131 257104532 14226143 435185134 797736030 270017062 780401126 287180789 740596034 586959169 895608701 566701197 415714675 121617842 870176164 568336847 29671755 206972029 564738222 329370695 998880952 604406360 888272836 376920438 793573307 640593967 329221984 343348817 223506154 938540958 556095442 811842496 481613294 432644986 938077631 204323104 902883846 436601417 318552732 649851586 574519939 283806405 530735927 138819689 813796170 778328668 793641519 214417872 667316053 621023155 151641719 2682146 446218546 417040159 670832087 348266880 934607746 738723626 379400555 408234879 634455419 588750612 933049378 801528231 992342887 857616719 612774208 680939253 250213667 741209602 304157404 336383833 646173857 820501896 393766499 944786489 963739750 576375022 223994643 455603949 718847500 797727352 485452929 653396289 316792001 565442076 546328852 483645942 122550727 14924805 901294727 371296064 738153714 920219921 256641131 675733321 923655981 152547668 633448610 250736301 505337077 509693075 572039141 66401533 928814300 324049098 951368767 226662716 75581959 507614887 172451216 60146789 723340977 393156620 255671820 881937890 530983590 645315728 733481657 915855894 549867977 169459199 260032500 461925589 703683726 687754454 176835053 960721895 765937792 469947080 739139878 854963080 677138620 654788923 605607160 670879467 140477045 122046924 577555981 548672690 493620590 184535751 522076391 137790328 809783939 817733039 828711512 373850695 229496864 819611068 769779208 198317858 915859144 493848664 652054259 699084157 544715151 522125217 718288360 161218239 769070753 48183019 756244491 269279431 799636921 268132155 420532051 991277668 260621994 927239116 282690317 320507868 639284186 174136974 873870423 309838694 685612226 773671074 38727846 951344560 690686063 244977375 327507008 495411801 868121604 970318417 117786819 360511096 294210870 20951220 282070940 769434387 888040654 259159293 332859537 540514729 661160235 179129298 893132344 659946153 877452989 191388685 363540093 356782072 185085067 525238076 759236896 150090608 907275438 671296548 797692469 366026587 671507668 626871098 12317346 243130108 346104510 822863144 455788708 688156934 379203266 396377934 254776394 578102819 19610185 853049919 618898936 766595438 365084242 660562496 78216934 179747577 922089454 99413964 843341727 339464264 196939970 972199954 145911939 519713492 224611208 617224565 981738565 634871434 409202830 857510411 108459629 910653513 968345653 366912031 835902934 717751912 79923571 140831408 594151217 276426029 787637842 455824367 904033153 57848150 783622254 652712901 128025245 177792148 628415355 109157451 991695794 323106828 232807869 733099599 123762622 437825237 135833743 626708438 835138582 672665212 6550749 666499220 217950433 551044482 455859625 65976438 168656794 374722012 223646345 936525336 789525394 17406323 479646247 488269648 142924395 391355042 769368768 965508513 570286750 811659963 717099174 349562056 493762550 622406786 965872318 843612468 642418707 375698096 836905731 909797509 502936808 527940721 734543617 227149332 345072958 81961446 999792730 136055659 258641199 537853604 615199045 294101704 245865131 922798132 982503178 869610911 389196278 138090641 534661767 171528981 251261992 627246253 4123310 991114886 526953900 456633068 687219461 458643455 422129345 304197030 641846820 675126980 424382972 221516714 612572218 467835340 661189316 151788726 639622025 741483584 292021205 825179136 780514534 682677248 536158142 771561136 328506426 105858589 134774627 817242211 831493891 922632544 494804091 515135402 155156691 723857602 163337746 437666441 555106256 537528818 920084745 396542712 596468019 721587154 505207441 481370469 785528777 478865658 514812084 720455985 539812981 900326964 927537868 308447534 321825452 109738238 133773322 344525351 680772855 183842315 528723952 582676313 46451573 489247682 279495895 518738162 564950614 727421630 406547050 374714009 291683425 985379916 41821737 535523301 824252271 65256688 196505576 390763748 619499245 637943008 164784205 735154838 74557534 635042951 422774101 788909424 90864087 984839428 555773135 722360794 935675521 849084072 807585503 462639793 681618715 515685244 108769405 450509254 101167222 254479800 680662516 101618268 887518199 593469517 828528483 837894574 795413528 62260572 177113407 269845863 708583654 267700925 941599951 731627560 208985733 196945530 604033199 390664197 525362088 829659984 850014030 686594824 942328857 19857717 132768111 236709805 148523319 5646796 297115820 74885988 738516083 700816626 685746158 942302483 703244754 925391158 362494966 44987281 811976302 401466968 546971096 267427372 135394549 976297425 85138811 729535780 488387624 68626251 134816282 337507886 990688093 7022373 578171589 436066033 68874494 570643696 842523361 899665804 823912712 596675060 735650980 559699726 103131533 878749612 966558106 228049405 255159090 161929285 823812899 27525328 616991154 85133604 869855986 547207285 518547545 603893597 946656655 569526988 699329161 776848956 364577494 556824361 391732792 296268224 393838198 758364374 939598448 655191323 728021620 88591247 849725391 885818675 547720613 318958084 421258501 286650660 149535799 316729946 175545176 848019644 787196968 306394282 565064994 178470654 171813837 945824129 227970642 13982880 265204813 522054751 509679847 140229772 881624612 254856760 431080825 911219299 498878369 841801206 504673200 606577909 295871336 637742836 152714954 5075146 625775856 244604292 523403289 328140444 99939077 111588203 427917187 22042587 268140615 487550560 956191233 755023144 393338282 438987408 896687136 280610010 610361589 920918813 209562755 233381244 303128387 846311066 928941150 192157773 812967300 181389201 36090877 818573246 584421629 529309437 169994043 4914168 695537604 649334480 738792459 451448659 399569733 95533166 438796019 203523808 89646272 438114608 601282444 50274017 298930120 618153187 586416900 692708171 699321541 371676742 490581147 402889803 177217395 574816655 501928489 177570494 384757089 395950311 189873815 506499767 185541235 523596521 968693345 636703229 123738465 82266407 354778139 537933450 874199093 588095141 722397929 136463117 862991057 800226908 316287749 493504873 658410343 227451832 925445180 173020468 833601791 879602459 397382769 587298361 757924340 307849816 568444441 120159990 25707639 973808440 440692926 638305055 596628747 55558137 956442493 785938969 882252039 158164937 69599111 346953087 150234391 686326607 112446115 407639969 890164668 152965411 357564330 334729216 620771783 906711121 947624202 292981204 871455970 98768091 36977476 83305606 37442055 706458676 636975471 221001270 701670918 780754373 718949810 526096950 821782020 34306411 751250893 388465548 729748983 152571383 898002833 494938996 33909547 71910317 936123747 344823260 244670143 511138502 195899070 832321511 422161961 230952942 531234478 584070763 449447342 529911494 925303893 889849458 971805419 334735971 291892073 50036669 856691535 589717965 530845876 946742076 464992414 164771969 5580435 849530263 497907055 646021872 639069560 489583016 691024815 295848190 256429672 860135167 912576797 616476291 112167294 441265245 484349387 519693773 697759846 44721721 550822563 494132764 861353187 415560510 357379040 646662181 620945737 988277963 584938897 13861520 645172483 57875313 444906009 27117690 739012366 230868345 981112498 779020276 732126332 193403740 266877925 741337729 611965171 888487497 540696083 512626076 930684203 243028642 296550384 151826736 120657780 121442431 635200258 226207774 703383085 697203241 870644774 128716987 91995214 534709408 59061772 892534095 313415135 929182742 478501302 968751767 584435839 898448498 643279613 560619075 163256286 538865614 661963532 688808825 877844035 699756794 695745251 846000464 920375046 926211062 904378837 514121046 794416919 880085627 943609866 833221643 13464438 896515187 6447870 126435171 670473144 429421693 212220928 697695048 116830857 538245226 315876020 763131926 617258532 464298435 188483986 980561694 242265821 247129664 415239268 442719011 806028184 483951186 37651660 549845727 393446478 398234 797698235 591489407 32339599 787520880 562790139 86889763 819519483 989584733 282590631 18650464 65507528 108751777 16081582 460094909 321232447 752556974 759632467 657546809 266844991 585499818 241555887 605918147 284135609 442250225 190883118 942223041 631940658 417238929 499769614 575624586 591493700 386325197 308574179 640102124 201876765 287830683 509688598 969113254 967913726 868687910 521866593 272741359 107091645 103802188 633782612 852111854 294418499 378708768 8737236 136474175 144220943 890950761 223337622 7776628 995504306 974923298 591650472 693035922 578649937 237458424 306416361 22413968 868081190 216653519 274068108 373614299 557604351 653891901 511336857 753242069 26818494 25640974 952100204 924386385 788235479 91540670 572286772 907837209 620217301 65459714 547745397 693976937 740503765 304017983 468455815 705567089 316406793 333156881 984900628 503744726 649377334 790121158 893385630 648635697 320552758 228189409 624603127 975549070 684603511 698251927 434025414 363736047 334178683 544564309 793692425 998573511 332105302 902836024 854931854 590405248 136596531 483081619 351461240 782955765 727936975 365188973 198488512 981223672 492208636 554447616 176754866 891001805 266361376 768727867 104733804 110527149 738516147 25446977 322143074 549747013 593265605 934740456 308438237 818672692 895050101 240489531 344597367 132186000 997953659 322892281 884838816 23066466 9924255 835947283 559029276 102164517 638738751 175403826 995575939 838571339 904800205 616425518 587317184 351544248 462886479 41119384 584230035 458808901 734590430 496967217 532467727 779036222 67156263 403569 303573020 99508709 939667693 226107649 852291062 937153261 239256197 879632449 311951532 451519743 292216920 102746051 397803426 300203576 91708516 42294478 320333071 49190825 168631996 445434076 315315840 914117590 562817539 164734492 922434387 7760184 267762165 607057392 133704509 61132475 191986655 431150960 61906117 617688640 921705250 6074342 728909254 267198236 144765364 60223312 326092273 464441495 90916510 877178082 808617289 247472239 920923775 429541761 325616805 721321810 399087623 331275848 33419825 423545703 322920573 138089223 726954477 372113094 899775034 420120255 124825132 380317179 190983468 422959143 163212311 799983239 120645460 978368042 168919080 675617119 850944328 12980839 124480175 500563307 526547122 225217968 949043792 425612808 72115406 972509835 530206851 994408327 157269744 949968308 452401683 269511084 671143164 825037465 309750176 180359727 162717676 830634973 201960989 414717758 770359374 484889045 225633618 950100473 334528195 414116110 618553947 518107893 783569538 679541957 929401383 990254266 391504338 424886637 337803770 689362501 720820371 797885741 280366059 493522823 267637430 430182495 582217575 595309539 644965056 122340883 998130604 827223220 966662732 372353161 753821775 833114053 181866630 417815995 252894646 63601111 758593200 473572305 703515551 59230494 889676448 661576106 226150296 852054468 528321344 198316378 649980292 200743013 524595469 224764582 335536668 25417874 914041497 135258506 505313131 336660814 619578122 368866483 867247953 351771028 991355544 809080838 742635010 366067407 433587474 357930775 326812292 575030623 726849114 210931123 533602612 276368155 529967844 103178838 565566530 563461066 123582012 577164981 219659312 581395881 111452541 48137782 165094487 950990824 917135322 624202867 33593185 480171308 350790936 88028091 754620880 324566031 463248402 128881553 228628086 604677020 500724532 832910123 943966971 107444691 301774081 245629940 940443227 870671403 849958542 952585738 146651493 604122123 895773700 504075968 41239357 460807503 445664033 981162270 682281946 887360713 524898744 654243420 590800521 907212478 474075180 831150187 113751656 706197861 344106489 958889068 26796780 899371372 713247788 886758198 582570075 54734962 480177126 666240980 177125971 90601358 717572828 419437573 324757057 905055687 254520282 358823611 116303851 44735129 437321531 548165276 362599399 770302582 375499635 691091076 644427297 957894979 610734982 336000001 633647193 44464343 50802574 390185430 770726562 540110207 45631800 837997176 125613541 756283005 882933831 713204884 765448796 78511236 604389648 106333063 313200151 7420478 358273789 493495780 235278714 533270726 203587338 571215346 776161725 515654190 307399755 618033708 184940907 973954555 213753956 90247103 786924771 52998564 495686159 488129807 105956059 995332374 198991258 940216370 636226264 834026803 10555750 842122611 26225078 909322830 418686057 331413969 187995174 842853552 518806701 204855677 304722731 687760663 56686031 864563295 527726748 562612018 72438145 129593490 565367206 458685990 458831368 258292964 49811783 327588620 270670526 30758231 496488660 676067184 752506513 177920419 756722804 257154515 908825218 170267569 796371362 336629291 820848680 654920225 537635246 685258334 898546218 549428933 153086013 766501578 246017737 600089892 273545157 789435072 271579219 95945464 786471442 49476356 468662193 112175792 225193156 850376783 826800858 400558063 914699726 116136397 819543389 34645003 468896761 379065760 439427804 597117071 974276447 86555995 481545611 781165497 968887280 941686407 19620533 370092284 179193840 744859425 366759223 297333120 750260855 422504474 736877571 727884957 21792240 42615254 235605663 936692836 746964122 122269870 35268004 77608470 693037322 615142254 928212287 321943722 957361831 537773015 178795954 128853835 456541229 348678942 928326612 561435096 886734379 725692523 432573325 736359267 546363269 945453915 330667100 888830643 703776242 406394495 332546001 204581058 482212990 445662171 835421202 325625150 154327050 870221159 135274074 820296972 772231623 344241554 624148342 222889153 725683647 141683642 10822214 950076711 472733516 705009333 281644098 278913471 759430559 616584011 275118066 857377081 836912186 900045497 576115061 673995773 501174646 887803695 997651195 28957349 661091582 512800851 634360139 532189313 184642642 430306237 895524926 95195153 549983046 139495801 510470466 361800079 274713728 696017032 374897112 318654819 783956477 191264606 93921813 468700332 164790668 512680037 913739045 179930558 747338577 773624441 382685124 786993822 245480004 191510891 886450883 831414664 149123760 832470654 98861449 289806698 283878068 725871341 37551247 470783078 272889541 726643299 229881827 517511252 293149226 518304129 163246502 695296829 161321343 625374299 763495054 171993057 238126899 806651643 670264421 622632498 220678665 946393565 421361287 303373783 723216795 373327986 396026472 109051050 549241554 220952989 632360972 53482298 244203631 844654137 6717581 868962122 156001158 640091536 480528025 177593936 350929918 609036261 44284658 165962231 124742418 978781420 559573740 809442461 774890962 288489037 577059058 94537174 557776803 353504292 515337473 458166503 628242619 716081540 412061482 14321484 481002662 427050735 499466261 724170546 649050820 682181855 590475641 978361341 564133064 628177473 577488037 416431812 660150586 758535413 520238843 685022416 616342006 390399055 311567983 43345441 454439595 545012633 238277644 668459497 534580573 155911311 538518127 869120782 789212388 463941089 491355210 740544684 826607467 100102580 172866274 806688401 281131761 499310113 75337874 204857792 731011531 576059829 8858950 785079022 488553760 282035696 320411393 302739720 548832108 707236806 543124055 328919979 945689342 343702049 206624499 529235883 558599801 470592092 247122451 133234573 254211927 252123337 217561351 835107340 729263201 313286957 233405365 392897175 146887736 524950847 423432984 791421905 156607440 826626348 858047932 74856977 204865263 330523670 248190020 34514400 215584435 68710032 377470437 676462717 987164169 722176804 227558632 617979996 745531447 167043789 303827243 10208162 102131539 715578237 928447137 108628139 110067401 208936600 801345998 484421765 275879384 563319159 905822283 792738674 341345302 413416423 243252552 180986218 527480808 807195303 524601861 91376278 167118091 162843117 570531416 199611350 152493838 66513890 207494442 510434620 606907349 946696993 73219834 644173967 908745240 505615164 137022040 513995721 15566305 785177399 920936043 272306074 298131218 303200267 498707308 620181474 232257501 926273829 455329577 996344378 230532426 188396772 936316291 425644652 801657780 624684318 81522928 564459255 980169548 250436507 887654137 944622988 540684437 614868121 306671805 933044115 937404646 72432967 898439533 907295911 464869611 576506954 592150222 683903254 480630564 34269242 976519610 266211426 648050277 204042790 258076319 891258818 376624725 618444300 353042942 297057442 52095471 227118946 201582317 560412446 899329539 535268752 916822422 46001291 853642678 799815795 127317942 629116911 389097726 311463644 391413022 263993476 692654887 165935375 605993014 892108345 918707536 240781125 199055477 184988721 914783983 616311338 390975722 700655425 308211785 137617759 949962422 51639926 666518267 510986745 113820048 658377101 464068724 412650752 741219391 50042234 932907128 534723569 24960292 487885026 419298718 382053693 855470253 645954720 345476563 755603656 275247587 487447107 736452822 688173162 587517661 66036366 656702649 895306353 663382346 910390264 980368486 779993117 192429292 253667626 555013656 529678371 67138583 930810755 434992606 259234091 55688246 115815831 53212699 747179090 432488007 580143532 643211272 267329449 956348762 748747835 930865713 557801140 109491477 767656565 510687476 192724203 588506675 840493756 241500933 146770492 407559424 313279781 462267885 833068423 685994975 125265917 444998790 969152289 741351876 811486273 827632513 586449746 254883003 729504804 828330464 741121751 878056031 985543565 487368572 534132576 763920483 192252566 302581120 841926675 872445197 775093774 34201836 762383879 955130294 209521144 530483475 388396234 314048843 90878474 230169629 185374428 892369615 876936751 887869318 573463090 60646871 664223493 389889181 382160564 779902220 643627616 457017606 295838398 118300845 278544325 13944632 587373987 457743626 428317936 150379264 545158181 639939850 75328591 574919165 676462335 564708006 50074500 275011105 255191387 468617579 159478758 42811446 704211292 204503292 153183489 334938199 528113302 329125774 663776529 134941298 708117137 982554731 334780811 811692749 397689161 681002608 48122773 543220862 69611953 644256398 901210761 359623154 818351147 3996236 869867638 490897767 551144209 350686275 919209119 90831217 552976176 253017761 566437882 470619001 811330120 306709415 848418225 44049465 647853965 239199787 478157221 367953473 265781289 152925207 42897126 888355958 315002295 317369064 898345020 488441485 356146378 838157871 141167777 416699284 863891812 770435092 605422021 52315754 639717759 580116430 804529801 309778498 872751496 786860588 247749508 731314468 953173214 920752655 80762753 969622636 878147160 582002925 300771839 15902025 462593212 159468880 98826672 179687231 229764937 859246933 232298234 447091366 529468462 764538670 734430841 254007080 44416784 661006240 520797563 982045255 258446216 980502150 587824258 644074965 315646371 872678220 397257158 187494009 297678944 135227252 534625713 675291697 168417333 830657301 257359201 2589899 979301259 286163799 704779049 285253738 716558141 916665080 364747536 511206919 598969629 684493514 295675728 538771438 86429808 289396786 706898136 509339709 318573 607830955 836183499 638509416 41896129 884014401 850311679 243107512 224103949 491801367 719814015 273657543 894567014 95946209 492354313 683913733 55881173 751482218 200146065 80638262 530015957 996874512 333800380 874160626 464847064 707796035 589296742 869351716 404154562 935662857 433076509 887813516 192553324 643190397 625992611 298586173 314858018 200385868 142954351 941958431 30372134 614700598 867005997 558579054 110661163 869866643 742757946 518465081 583410394 996278475 762997033 796457700 778249040 269675229 29513792 839979430 584029342 398415577 191805179 143888396 428793672 878076262 876906376 185794420 684333511 664839741 798343498 253762451 106341639 293936811 145352535 678289136 557576937 667234835 838555898 135338854 712626882 300370538 522410033 441926310 485503451 818921146 186001967 497521842 486132719 231201695 775981531 931191908 919018927 512320461 927663184 566198757 461444929 468548744 101338971 439426870 260008637 711173674 682990592 350333098 464211631 111060640 191779062 814862698 331496600 560672237 919413030 512264176 944234861 915335334 526534192 843183244 504674838 641473653 927121125 222723042 107999728 431592087 863981518 427210090 448049484 58249309 71908772 875224559 896919022 562388399 513608662 316494865 481056654 457277828 9088262 674581699 414191706 938515051 237705100 638807501 628794226 176669957 195850225 677109323 721086315 18428552 907008374 418695468 893804749 35309886 446843019 138482612 811024021 612103940 789274968 858141178 718926004 730002891 510604343 789612907 847965837 850146331 583573559 660896069 689839483 502063499 498985371 455695645 201825097 518696266 115421785 605784921 992447160 844889241 703108764 802711991 886816253 416090959 650683203 813858756 648718656 933067860 47372383 38997862 683289373 862430758 868719545 357274963 339600167 926545239 543940425 243189143 473646176 97847052 531311040 436368914 781656003 16647040 904604927 878302968 123482299 823250559 321737886 524523855 933070761 745914347 524222566 893284724 906475617 289743931 9533655 146256790 317763757 802945783 130921379 79078970 31348937 579454781 219752497 525178037 692297701 575666239 441686555 519507381 653266087 97389507 530838960 575590841 202472358 585267874 540367475 101991828 129566192 692005705 792739738 551210222 663999876 275275835 461320335 675965635 723213273 287648908 240222067 648529890 355511894 506942567 323320726 870355823 479220951 918024586 31828480 997314401 383423535 189346757 235750892 537031429 4718240 672681343 518834503 393603961 427513956 107964977 795026229 161831986 764592680 860879592 446229645 969981302 168376204 518672071 175119960 946117347 876786596 566439811 318672982 480568806 717202810 379637733 862472056 613636165 986044041 940121164 489550439 618170006 677784899 160751400 316301308 203337413 953418637 235037568 811433414 612882578 653484350 323314029 13784711 169269776 41262243 372121757 337931447 385879080 184007934 513563857 422064384 354323732 234601218 68876895 228900544 387446500 987388761 520598192 142568586 659404796 84271902 306375875 289366693 169160596 609227363 680394664 504229259 445997623 530995885 103864070 654132844 330542148 596225395 169990039 216227240 522679920 20183202 66514342 967707481 491168834 520235292 753015704 162183623 671854742 350961972 639807072 833351665 482992155 434151219 104860680 246265355 906529237 96779735 128762927 683825146 656348059 873744079 748710534 316152282 317004954 99552576 862605138 673784441 669492688 603545667 739151853 639167449 627398802 433277796 473588037 565925297 558397702 237722405 351774300 417797613 772595370 662404985 318980806 851703082 235828939 768350281 439117102 785373499 322088719 982181874 693749713 607786919 475527148 390847429 235936513 918767144 782029102 324198534 438686627 7887661 620005493 283555566 882151346 321405017 1722292 39334441 904301754 200223490 371519412 355806297 807419485 750773426 388409999 447427345 621818578 71360938 203239989 537110490 962166625 427005274 984241386 170492593 449669352 421688042 173272006 536834695 571096153 452598197 391562036 612889024 875554105 66613192 316065139 936563893 326836771 244659304 862258968 707187250 215616323 295974537 123880330 906646520 818754780 620165463 250471301 202307388 137739202 520302769 873488280 778516262 456869345 753850281 714138790 193310547 173075124 599067909 382445673 665489492 556623822 171357633 259700202 774408749 261366613 607869323 97475595 604022487 91217026 852936006 339000829 461237950 469007906 393856391 389127114 952604483 143361816 796207899 910901964 284159803 466250968 928242559 779002932 695001966 335021550 611957606 796712324 144678169 743105141 754254135 333468437 351891564 85967009 101331341 429778578 63207693 391961909 263103925 639481723 199430292 823936013 231118387 181799843 634544397 274432150 245186877 700124595 466549113 546152017 147602238 173045669 843551820 104222036 990469973 938290505 882918897 569405128 110211028 978351299 586651457 563021164 379599041 574694155 193022480 864820240 794774616 218916460 425813409 919202331 297821574 391802117 413560108 527967238 992222832 205015883 24302687 143326175 59394794 728352389 167860698 586124743 439348993 188494159 806827442 346707572 797383026 574118935 196338670 373665200 317305392 543527843 645283085 242688728 788811490 254101386 600839807 627664734 600939874 102789814 7565607 354096455 288634943 317767144 895070688 86982573 599707964 363388468 435419124 864205118 528558031 898974080 508177830 340747963 855813027 192869642 452885162 900960122 853068054 151388639 580730536 29805541 766803387 751160165 905648060 906524153 493835994 393453010 228968697 14770632 632480235 656136882 983825121 349825015 62144799 322807653 495002607 888124480 274312151 757999518 55644429 383840242 341222186 460273637 132599838 152046188 368907876 976765974 422615669 106324901 87235457 824450016 298009436 972106407 899814838 251393863 497282703 775939599 983378409 151292707 895937214 413935247 367595828 281762207 410496526 275215213 591643494 628716730 813153945 9105665 732453249 300573385 263367913 188880699 201800765 298175731 739791489 105721882 700733572 696846260 943472724 307509814 111527412 724752731 83800396 69874487 264542048 172770955 960590532 226624603 649049423 546952894 655142159 550936820 916542588 871137981 590944751 337479400 813365332 472117545 141583646 390245679 6587771 20432118 909360841 822155353 743027783 375964650 164752399 808875782 106964291 437781283 135384454 870510699 302249902 499160462 279095735 268156627 983059962 844522609 907152797 771399708 895008845 572301793 224553258 352980022 853355779 954017613 411898307 140626344 851296042 349451249 657274047 861283339 650028292 158442852 148671467 43755148 791504521 647952395 322387464 157183086 213843938 577130403 144326988 375393158 831622127 156789691 456330717 407703741 661919426 481204279 94623321 217533074 168663074 72406991 186840145 828091797 232580617 908301453 994789066 584028909 378168614 824517715 65529018 720466131 77328220 864456531 6791569 97556757 555537473 801077397 980245933 243662228 432178592 567819380 658850020 632836806 500730359 817938721 566103807 667120693 514252026 17073951 883068985 335044861 384858638 546364869 558275524 854138962 575876815 184965567 781877316 824875512 956877194 244400013 930948178 978889417 592242628 456061443 102478586 712017715 564085425 397262536 657790013 405755319 69717437 518154455 559157136 666302827 115452679 639873280 983861851 123126905 534595553 656047208 320408699 192386718 347063122 77672196 88897217 598450604 28835476 733060642 47505265 11931656 135125398 845872353 562452676 295424300 545231226 255220917 313957222 817435686 656033560 309502436 84584696 913557528 329054586 703433739 81424527 192870582 914485342 726930073 236010803 576545483 660781751 264377682 178144353 821733556 926299436 611398349 316791946 335455459 127044248 649769207 684116882 87704157 532543112 801555854 504546641 402432317 740739520 442986663 901262870 275877167 779054262 785274665 998643999 202791925 890946581 322817872 159863585 806981606 345676092 621248810 701925574 814583914 519114429 542179101 171479850 958703231 317520606 673055327 703451230 213104951 659443227 959117693 719536614 848802360 189631906 297706709 30972218 633640506 378681301 176040731 462272584 99499405 67753164 653049816 864324080 732363920 287015632 248669158 834173575 955694651 542871265 981173238 450020949 499200662 216862002 674921738 860371991 317164863 344186279 131150587 976997245 569447913 352430686 194249972 716137389 46082263 635299875 378795509 561543102 525825381 723548410 250995537 760700222 944257664 153517721 154000176 86760109 607819560 652392171 964797710 921835520 111885557 18783374 834255418 415216927 521270416 816569174 125634136 589745255 5371445 777902280 186923487 828853544 683990584 674473120 649469596 799107111 420906876 831766859 155456557 611054110 76708861 169410157 680709255 641457208 78448968 362899293 449502321 774061205 727842046 334639524 300737543 910945484 845018453 721228674 299958583 818919012 993504662 454261865 166163527 225736537 389196448 584251264 805779533 391650974 514880868 274951713 767581109 326483093 345516903 130013787 855162560 310668696 356299075 499576688 99769855 54467188 817673509 226912856 698105052 792347369 29277009 465020989 479065617 326997035 39534746 980291837 786309166 712247140 743815914 162953132 589543447 115491888 514291648 663041807 628080004 844901151 469850285 598359073 872793984 61136438 178359254 856455825 3947755 772919150 540615285 966661443 599626488 14328628 342128984 28613323 137903535 752115431 682449760 783444981 646595180 486515550 839982084 685686848 239269470 286055775 40384460 625971805 191546121 398282793 249227990 157403829 509649093 834156523 538400595 244198881 842487100 940841546 376281611 203001647 948019184 201522399 252162261 72270116 409458866 253846967 471728416 808938997 623280684 898469841 971314286 784603660 569487961 148263844 529246931 993181321 64004359 168903574 917203834 146311614 571922012 650753670 992076576 285034930 857691982 510850115 548126359 519424160 790404649 290930706 22817605 187640693 499772174 412148524 138400674 836589141 186563182 754937149 878396861 408706326 551512978 433126119 349571512 882187203 435313943 76463165 509834824 927085850 103387498 521940296 640331574 364695823 706949456 213101189 88934880 482489671 771780705 992125797 46236088 124936606 642904456 609426636 191046852 840976033 504590725 777430419 483087901 588618773 391710059 301233415 871733360 399138158 221148962 654419815 455498368 66010200 469216742 378336873 21815713 626904882 240199878 372140469 445006399 337999246 615994150 589062505 730921045 51418803 219484989 95166611 101507575 133153307 652828824 739026874 742746568 746202101 962318485 912538454 355101060 165852580 140009 613989459 301277304 459495998 517874715 888826515 162040837 200905997 149051398 706086761 857756704 999534098 980633691 192570910 709944277 827665533 667711260 436457071 566745024 347160374 272874274 786480909 25521810 907714904 995334809 257233948 475231122 800509104 418089855 605127092 868458265 48298562 191470632 774527075 956205845 891517636 852282813 585781673 422317959 352734498 758284984 399504507 377140997 911684344 195689833 964757953 9004856 939443995 782312564 938555097 110690655 145074705 522763601 763474961 919433931 327198867 976253643 329271600 256141153 65091090 550218626 336103406 366405659 730496304 485820521 481259639 153051015 352887875 791510856 960258540 60898886 999291861 100071739 818996449 851018126 990315814 500711729 264536544 547316137 145459368 183985261 878972389 194899572 190380162 696661257 355981025 675998689 325507343 659553390 827348536 604449397 446716252 504676830 409024834 47202250 598228397 978461931 231400397 846455055 477117432 751751164 582006425 387604355 760358504 35090639 361665499 860262141 167268827 966037745 814316987 52653671 648563301 786040904 677401302 226103870 352986571 587634058 404303548 755031316 694970889 44065987 83539571 126242319 332601805 723723731 861351154 72891751 985988345 486488814 71517095 360605419 506091300 909793562 118163698 314496125 427233306 171519668 446028967 487466129 678261848 861411307 263422608 830119602 790368657 448915780 620273897 190187006 927552811 636990996 115558114 191458213 980449475 966335241 920177441 50536813 282528421 564807842 309419069 420145713 645132884 93499826 272152388 104987741 955136776 316144609 467241526 839517300 630404139 572198443 227107975 508217739 802454491 722471775 331797409 360060875 866336620 956760737 31172960 206896370 289382883 197898728 546715284 325588691 954330235 463238272 465998722 248971217 447694628 579931530 563220579 243332456 880296703 405339255 897002980 576687269 735471331 950288273 401701797 863376552 657580508 574763635 685699258 513084713 277536166 539255947 678328365 726662385 566949686 714126751 182427001 715779676 458705714 188861509 476002577 36223966 610663540 228616809 927719639 98221690 13053066 824522699 507528869 846483532 101897785 515389566 801127112 740504321 114856950 429764971 972807295 819031642 585656427 778715852 969550464 180849837 323712248 853434033 666120052 996213092 593347632 332071294 853879415 840484219 121447512 51825259 845278105 985548294 857687531 691475459 736413279 578640041 422119960 750834853 261422146 215687710 233418562 890917126 197111086 366893235 624914815 865981101 852207109 217707209 100249370 880618102 151513370 702995286 492958994 256841488 515240119 441729124 104525720 706289535 424971671 833509264 113677461 475566490 932425068 867301003 760236066 132456590 967765850 476826525 768716045 577689945 78991482 945868317 624268635 742404944 282994264 701019898 221230784 927001241 632232822 63245109 992539433 381258418 602351559 943345764 959357234 517334760 22804788 134227761 831908016 237457121 319920667 677614041 732209449 463756563 668083146 252146350 940308567 127802186 49768712 19975318 461348522 263712550 194315405 553525129 396194754 860190362 222400902 486151446 256060152 233584239 707710482 523764447 952582102 785724607 717261255 582648600 123088026 278899578 51361837 843763468 737159864 819251428 688230209 609516952 839727445 889025557 488974836 585180078 428994508 544705399 467397802 781973716 185304621 712266572 732711868 503546786 596883897 28986918 123784694 228673608 63561576 662715757 275264281 275215621 836570211 975816669 69026906 912453297 394297482 592434181 533399265 875961140 706151662 358799560 569964108 155469836 784903768 895776736 837518633 51768524 3778497 550218838 570340735 264407959 602297560 738664203 994398022 827464105 130282623 559010611 459245802 250100174 806859598 263669973 281405900 649383145 756620303 369451340 165287105 644941423 919103040 254612937 615052945 61924073 247441556 714991566 732025977 955949686 52269938 722991540 832273578 460576070 649981300 468294438 622351559 701740064 537618410 836417444 790870635 558821597 65968469 326587649 199543713 542643946 103948780 55073254 611364202 31666634 205823002 709165133 981010491 947546514 967568638 229596678 454519932 365189996 730984681 658500917 458630922 41973268 492365284 924162258 667517365 402865246 807067687 611835175 25068483 661895598 528532643 869061718 875296363 947390590 515242361 644549841 922883931 956793564 4917377 707757024 121527603 352871657 479147972 950652447 876048904 951791451 119484418 203029500 738173922 96697339 635880237 400651325 36265789 163245096 362091244 833371256 406320524 911353171 425159961 649835418 181474225 883072897 568227908 561022049 132161671 434767308 738923565 96746978 559447385 610667746 692279373 891085827 99140199 663847300 889491534 596014082 282494312 128064777 547787919 83583212 486510083 322290136 265423521 162953767 849672277 574572529 10114508 591178729 483172206 855733093 598197643 86606782 478973395 137665753 88376843 439214854 287567358 478102536 669728945 815495028 471557337 403304510 63195793 210107280 104330823 321765597 191594231 178255158 617094044 150296540 569220066 581054997 341570591 331981379 279276164 170265649 543220111 395646128 270934467 155447394 115608731 134225877 298370235 430973651 149840233 669551351 282475322 950000003 510450192 211150449 488879171 800581831 346445597 119391279 509640844 468414406 620222482 319499828 843277567 609596668 769156578 919415060 127197501 734138039 262929271 422259322 482946070 567128477 534487085 810532771 996643346 726751525 830940244 460472290 839951851 442290201 957822385 8304922 474369809 360112410 31880189 672038471 684185637 200615196 581930853 16982005 262008190 718887397 294482696 196518599 656545191 224275603 562231164 104435698 617853919 418610195 903989066 46282687 990562455 55088554 437460846 728448524 275024376 799871856 109581784 800343756 539306074 399670992 158623725 601419906 376205518 453004554 410644742 860205770 77392278 992385969 714892527 357355729 167770791 387356974 754239082 544233432 237182510 683652411 467071914 834799028 199068424 758500200 309472984 555516753 734451528 798490521 245887634 373735210 266823349 719365765 786137703 92557267 368246601 201277497 137687388 878300784 377119667 136317076 898248810 379376443 470690774 793404873 236596477 747474433 524986696 573124319 533080438 326339238 629832660 888849972 939800490 756966300 59710968 865978870 665635682 395117680 177175912 12090025 425355481 9898046 459110793 250200484 536964417 302534199 463679990 96334739 454144318 567933986 850897663 461808374 120589673 463752921 765059621 864852641 220619982 795483847 272530592 107234362 371352942 488715889 750064601 409518271 87555774 976535786 593990640 421850365 602752038 245089885 87457847 501970969 7771012 351219334 591425460 63414283 727471526 180672825 191650723 347238942 749462739 877359834 869794802 332860274 155521347 456183012 96678852 229628282 643759010 143140963 527125999 358577279 222108049 815476345 767620477 933068314 567971365 65130204 232015919 400380350 211676262 521181782 870772981 643641644 648178642 981284676 915161719 457999100 949392599 292106264 771463055 796768027 246651228 144093656 347386317 675657031 771325241 524322972 764855794 360749973 208885434 444901907 723868789 452449004 2134304 733800447 488775681 776902536 764925728 372795572 937730037 519626103 110109026 112002973 30724322 92277023 443852035 334949303 39878929 750158262 326972435 451387925 174919931 416597449 392560664 840753754 771971023 610983350 814304905 179474754 118661615 468728369 175954772 516953881 78831475 810305219 53159769 564985410 70704804 684449350 357788397 998737329 134987394 417000298 388360280 232745841 360437055 715625780 466568791 175610144 687107266 950887290 265739418 345196654 700736805 697654120 768659015 461578658 624806712 554607101 766324854 37050901 50690811 580450959 674762930 296721076 454201383 899510595 971830654 318735490 137494182 786003862 567079118 194716436 485393175 28804823 997697162 83355923 543131467 199698602 776634127 993262782 966304459 259785606 77760941 857949285 253100879 644848952 508274986 627090159 243674952 895546206 872702013 185049685 937037399 260721645 380185620 209423396 365630420 553440684 317060303 839658495 269449544 284802230 683043842 10073115 124410099 986333948 869950775 827895746 773165127 842476225 709896298 252196304 74434666 133120796 235997323 94027065 827212984 767909497 361015807 690706305 119993151 620108568 104672032 872258 997261634 577553293 616446136 205022890 357473719 369024318 779276938 291525114 330610121 248537321 993133001 751475208 330125142 99962139 675259295 827586750 252051825 717899961 811936168 587473817 61824737 297665915 989013108 119478826 786340513 869129836 320625160 264013976 499044446 145927276 408404061 698160669 744466684 527233710 860904416 294107525 816094481 49440058 427999217 318828466 216872297 700360556 723655524 656561690 697597824 594959987 678339843 28732231 570888715 300254675 909949449 464198998 516680047 897710563 395678888 153572473 708603976 536153168 489949828 227422069 315845092 371128985 750932790 555186724 834277574 450353808 879069899 108494837 163727139 86081759 25689155 105914983 903599464 894890881 143226386 958688657 818171058 392499268 785173665 936943261 308803924 109021006 997228238 248354377 440013653 625502613 74562664 859762533 658004719 418733925 378566324 890557783 866170641 938016478 704810731 865730202 765583326 222777460 743897273 234032954 272260908 544459117 451296960 343611737 653519110 394153574 199796499 356602798 780419115 933009871 158537659 425671169 681731212 297107050 879914806 940495792 226635730 217453520 479372018 278425646 57437653 241545964 432110039 273786238 441430822 297300094 68911802 956853436 564709766 214289817 229615339 25501332 457651821 38117925 148794024 188322249 715138436 145025374 113112487 543479728 87186219 263139923 26074512 563702962 355990772 746436200 991574145 167643854 999856166 984101332 672446344 812316692 809356859 171941924 865609516 492777771 270562146 521044662 813440997 336837068 150524157 292166463 336604319 864096580 327872548 33678918 49655100 688427254 840671777 613031846 616744207 806758615 483134194 724432656 200308065 540298224 437220299 910475910 84249583 646111968 740710801 462084321 700234090 144241239 401997151 211194445 268130806 50571676 580031237 368407240 105665451 776219400 209021316 307997862 795184919 522484873 733022611 605105936 377229755 838896672 897977885 895943808 291728521 752112739 160723137 105676614 667061357 401687292 603023953 210818054 493770945 84525864 700104531 373751352 907898838 532542008 692895875 812920999 430086514 751206931 974412623 708100595 448969037 585893299 128780889 881606415 950853011 197229475 657580025 278971331 494796645 702178952 590063801 427927338 327735128 533001621 63214551 245104181 269390836 106369301 302517702 643486247 21223478 180233957 881750701 494268696 918906894 38801654 253729510 955256946 17789154 492848592 638603649 222886263 415122441 528820490 129850558 564283832 142426449 329097683 296153751 602829727 374297466 392904044 971505972 232339175 166740665 875634092 486541684 893799710 396926774 207383419 374358891 646452778 602296206 27908439 704092382 426223297 559149905 328910802 412651465 398035695 612261765 281453585 576190681 603348116 162658081 967967310 359490547 655846883 272730515 795775576 580859051 950700517 288622907 144545806 857923790 901262068 984290285 807457768 825516760 37993792 735197555 551768430 355364478 931004237 468655113 391340990 903851302 451666547 137524959 399708170 86634602 539828573 612481179 227867160 262399641 147831435 328540116 652376768 450704182 583007952 676644248 550799474 281170807 2569684 81782759 728291245 507206855 598522003 617594933 782157193 351670596 721801180 983589868 357836334 814117441 753298642 528349416 456719195 952689862 816818031 324868089 150471392 917199883 851981564 759569252 951972132 828235265 539238555 92172131 430938015 68718025 103282621 501372576 963001185 861530170 133781676 50717886 804126090 193794655 733712130 158878416 939332048 149873143 405666352 410628064 634727676 414325748 307045881 71930218 494905709 500986620 48401652 783728606 69774227 417308139 203579149 345547553 65165941 177723983 11688964 577167628 882690092 274580203 886442988 580517868 624764517 237409844 829151150 974729984 375855331 685933783 180343172 515585791 732951547 240848433 497146750 397203087 235584279 489169109 288525824 96504527 908175668 959304458 534822978 723715534 22110563 98669899 520539343 905966353 119255371 597181637 201742854 464622097 41135525 540451804 23936668 283163323 570347199 11353766 94062104 708351470 682415354 694315374 940210518 235432960 837319500 596741938 706345733 110849850 10757055 863917606 145550889 658140759 599034864 341687343 661129881 380022537 514142097 472793961 927695746 670286964 894001383 887519394 35156962 606385073 560251724 563940828 531393294 8624205 16353710 825002191 77068588 315329223 56934671 663881572 141005242 81678101 799629571 525464123 10862085 764552991 461457461 914771750 512322995 26597699 737052898 412962220 755953466 139126992 966702940 577818503 295807078 679639179 100754568 108191526 858012375 721797933 241747040 904073260 441065600 145491426 613195891 879554543 940767273 190557899 748137056 233007098 971547630 292337533 286086750 510288523 705711551 646862720 283448759 637627669 562950110 280863954 2039113 21935296 856186212 767536737 866568196 925332708 509281467 205571220 569964910 74377618 488276517 615963587 372522530 889017867 695706676 786034874 341334092 417955654 306035280 655962427 699568175 830373486 293433653 16258168 799852703 903338338 519525745 443965341 450344839 511984948 645754346 904697412 164981349 763313323 83570263 257584894 307199689 957298881 698636738 728608209 460398810 492301092 917283596 583023285 622210512 513885881 961106793 251080726 157740155 136285717 642041056 551242581 821734331 298956802 116495052 707013447 797006085 87265281 133284958 570791604 332173029 833046722 313201432 367988953 362854262 325962925 210811731 250221543 936544491 221563996 122260154 68060033 615973898 275035934 906042061 887761218 224868012 462047606 474781535 453095221 677005375 753931163 94321433 139785819 830074948 657708022 661181429 133847337 274326737 112383910 387514307 528351239 648511759 812736255 795921575 801248722 549396925 849320454 390994841 712370778 307367339 125255415 699861219 243975397 930744384 897477312 432417959 794967210 976550389 748635011 262548823 332190039 297777880 452088088 101976123 94414220 462874378 560734600 712897006 354960734 370636609 137367443 209575649 763904725 742821703 930491691 241127895 822229102 883512953 743475191 285011047 848734617 785266248 155481553 558593918 322526524 669584571 804032840 396515290 975726126 52128492 21762591 173111440 358405053 783835527 767520204 224238470 563584553 744362830 334366202 450286586 990284070 588820375 743682311 357458681 769481822 939623628 968892551 678662121 730436589 916713194 903367615 866288383 93699299 148783107 570969130 696670666 373479366 164292796 736479736 117567398 441264397 623541967 490453130 400145482 918892966 580936586 681868024 657634875 402394480 751892559 900628619 883925334 338481602 552934674 630581059 651696970 546163682 354537182 186091602 27710491 284046735 680523344 29935262 327681185 349738872 712552474 509172035 44991239 480384451 798637442 523101711 685604172 404493959 60455648 496724997 330988485 899148882 2002979 534988762 298776985 62813347 244802381 204792955 690629956 703950961 659876082 782806405 337713428 457342114 891101374 555411404 214098863 293937301 973961708 210074581 640940171 152278169 447437775 992457819 354927733 722147955 599906893 751221453 247729163 9888732 819379294 138006478 938566722 324492033 349926034 869006261 144916704 855433473 126082440 303655691 145679618 741011059 146520696 637408015 815167384 609535965 180974506 447876661 687109092 621142590 706131197 885579938 183697919 474817413 208234081 840284338 654955860 338990871 653602909 105601907 574919971 193522253 863976074 499953959 490884351 28660979 792719381 987937734 918053201 824637899 396951105 808150905 468114899 933657352 786581219 876645152 23513621 84083411 971238116 421075149 14623227 255379914 398830275 80279623 949744700 938097020 714605328 360837000 354460389 629667054 239736050 192228160 547756501 778707737 13955746 217107791 667565374 383279977 775266798 14751566 454943786 150437951 37003959 216889607 442928372 121125233 407594867 512844025 511505867 3409093 537927083 852869333 272791346 652660345 329693822 738370051 44675 224738750 618499869 382203422 249630823 915845944 398768461 435010932 267966815 436070784 260829160 492702599 519120959 61970338 280439644 272631182 966334637 888073631 750301738 237648629 140277671 752586988 222904168 823512024 303617530 838031602 595484480 505198988 429674187 269069708 748255599 235974935 738401810 439659916 209702343 35007923 727301914 855421237 101047981 161397071 656240899 113939650 806771099 103414542 68872000 695388894 25711519 711428037 761721882 855231787 825937371 972673153 625041706 56876731 107904515 20104447 18365923 252291226 328846050 767309363 370034694 87905346 605123797 469701314 637861419 343339044 528438350 682663815 560235071 622026790 754005074 138715665 516462080 168630304 220087548 723795747 77284227 694085214 533862392 433530676 703514543 647031841 251393800 969299181 323826880 307731486 578311811 142468525 61332676 67569405 843121617 59266568 263917601 258898395 813232624 498359876 839963149 898124488 730769906 130023642 347180309 42376010 681617277 743254267 309490071 984362713 194174281 262140169 223281223 630280033 455235493 291768089 382531246 662442947 56098035 694198136 894810534 383999571 650319400 874340643 362042335 721164635 351447885 500314189 986443358 545516439 26725888 52130525 617807609 486437048 621809652 512961261 143351516 571807713 95898476 677980492 442450694 194543149 158238660 33668605 469058252 649150759 17761768 973580982 501366870 864972624 453398747 960926050 635417374 879113372 564568626 201568927 487148660 445532405 943738006 788731457 407440892 133510839 356575814 732584909 895475245 561632562 921081234 431706879 493435604 980889900 847229793 91910212 676755343 570421596 435779500 517004097 521299539 396242672 499578881 264174922 390045671 763894792 229309441 608138220 417552998 791458872 896083938 2552163 708431809 882929418 249989869 103398692 159548475 683217018 540837377 698708565 633652459 91262840 199773710 941351504 828858941 636477033 765244059 916383524 628892273 743436711 835726913 717770260 881442843 164532220 789015854 221688854 955221665 609104683 954395043 61818452 893703873 8649831 182727286 807384750 229576456 463217370 583837073 933947447 703675483 673809440 803985009 561412020 341518962 418552521 716454568 375151648 455607384 793311450 168416347 280906539 912098541 233072205 330947780 264335798 36030308 299687308 542662833 134836824 784260037 698946554 422223107 109009884 958840684 238637674 831163185 317499329 29997960 679238054 881242562 438467769 257390493 885249257 502622422 363013930 7119362 725241957 390475422 828564912 500757092 723831231 262188000 628887961 937256513 444587150 838911604 436662631 966746478 369725151 854428617 157849938 595500178 538917300 862756704 90649027 475656617 858861952 64381264 299491803 191655553 864138412 98346689 847642602 609717568 722957334 500326001 434094584 497165020 532706701 866374962 519149631 910838689 531922518 381322345 68090798 805674927 882766762 60483217 477183592 832793978 918579509 723640758 398279235 417652296 134431129 473309179 493921098 555982518 201073385 282915860 466008635 962530612 292901678 451153357 948097290 35348612 643409638 362619009 726692188 154780735 725227904 767188899 375154445 148589904 16379873 634175289 321562795 833712758 712473826 305777755 964325880 988906695 565849551 990450617 831841899 999390248 220319465 834400787 710927792 547853781 842182117 782791358 973682212 933077728 983773292 512385574 310564698 38643369 535162521 716751942 771191448 253533547 781132670 4999473 940163418 180775600 384623519 689796493 798183886 425978327 89003892 138021139 483746135 92853909 911616492 302870801 140445963 708843888 38088933 409081063 825974837 374784070 963508661 786510477 563721427 745989829 118860196 906426124 838624792 248259824 979641967 157734656 844713707 170050976 306164935 518738717 237070951 129751297 951353552 526753959 79304281 30487825 288989347 548599288 897299909 64707620 869401292 126608126 137136994 552708450 315643084 268815802 34083353 179044167 695859096 150455490 116199306 356114979 487324696 412198335 438567558 240988312 20527017 662343664 712872342 907958815 924469403 693810854 436505459 447177603 802559156 961419206 722944396 646100835 219117484 221598282 957924483 513414837 602613679 828705472 948798128 572280638 248510430 819993033 588564636 90583066 489320142 721588891 819263368 426559546 690850567 186282880 315341796 96225505 365793158 838942293 893679064 615174695 191282747 46555916 303207358 144974198 719231116 425411626 936327333 402877456 368671696 374103369 664199376 860871046 821358549 780765591 395907637 630865474 240951131 311664214 798921983 85439998 664429719 419656026 328420877 372584523 845652913 572337550 878639472 900740364 287256902 539432815 798820593 823422712 724657894 167529359 657470088 774102043 215285143 619525907 744955110 504567381 342350416 830325814 446469100 594648537 204265599 203977924 925460786 965580720 457537668 413813408 839226497 240046132 174849076 198883390 872484441 768252821 887979350 288950057 485061228 392020055 432135721 291958398 461857313 945945042 124180445 861220208 871226130 730832561 872846101 796757954 539498894 459772788 797745259 406647376 964607768 945853166 525970668 506438534 851528422 70279879 221979800 500040167 145540194 468513274 539978979 759898759 450514861 995323224 932331831 257752466 937147927 563070980 937725808 777287875 596034216 391374326 635387998 325552109 116480155 604925048 323819079 800071542 721218013 693318828 988704098 356029655 504756114 926719491 337761372 52861725 486742673 566424775 415949527 635275115 389097955 837806738 972508134 671716726 644305736 314260181 356428435 707808263 346669489 811346259 62473818 943336829 481879495 580583587 985020843 624226376 835168867 26122417 496301675 180618095 477540116 6993725 102330483 113415947 527307932 240170074 725663248 533532362 808871283 921202416 187049090 769590893 29498947 380349243 685830781 688656458 980132458 809601355 914165930 433374154 798462587 794212226 806236199 941325804 259111613 857475865 590186755 858691521 916797866 852928667 620255939 732047086 407898226 127654503 578175712 319531053 894322037 580745522 60994375 767156172 927053517 183717507 52049623 874154540 691928770 813233974 861307878 857264195 845790803 203657722 130611901 703354907 458978740 251276243 931834391 258996048 670520010 909874328 413193638 194269590 400004017 477990774 74399374 561411377 814817591 192067947 118638568 431603068 36063070 179287499 948864833 391005539 442863069 162882751 841080600 496283112 320829600 626213825 205462883 993518241 277474372 644606498 894941707 898385464 849638556 695047045 118896491 176793322 278556975 169324129 1389269 466291977 359124919 53027458 227070733 709955962 289082531 139248008 239859916 907450424 163350422 370216294 588247870 73216207 867723238 263646436 55165572 490468577 917479709 371267102 389066803 573730981 516455804 408105732 225713108 195227491 495606387 384511960 781442402 13169145 998604074 768577458 886739407 348437337 350576892 928891135 277095807 89343241 951115254 81704958 546344650 630309281 246698332 659871042 170327678 157743952 622725157 85492275 35469916 952753752 778016634 475201420 872187799 158414222 27666747 310585822 583898968 355100891 539300986 590668812 761952060 583777213 5533693 41430478 705501652 846781894 446154944 464406062 395645731 280804636 790883441 216921101 766349604 868749560 720070643 783686815 49044546 707336231 906778587 22445547 920427998 522109836 916467446 834730828 293568205 281674908 879522497 177655282 7557079 197466080 53532655 43433314 468018745 637187959 713192167 483220978 852100644 704358801 341647940 27745102 552039740 852811509 394659667 128690934 767689497 656313212 272620184 305723581 189150665 718841491 421044809 692247883 356104780 529945533 407325905 592928412 392077591 910344463 402144591 620143232 435406994 877367731 36459541 138425113 611606426 199605861 495066921 802942303 800378367 60014585 882163399 525363615 820409607 889360339 55351772 358440440 997165034 886110317 281577101 845168349 456991315 789254100 72281262 106716054 87559397 646159916 29122124 445361342 624779700 869969448 709397028 678474438 741464776 356204434 587919401 364293233 556317342 979838921 978318850 877715798 316658854 877069374 160198537 577220194 605023686 608636150 352531789 832209491 246590677 880870667 888411409 520095806 178520865 887819563 152528971 500438025 308849386 868364311 91493030 311989489 214027748 281346341 145607296 23840262 607884217 776982207 640163692 298887850 542029957 805013218 770474674 628935446 440842072 133362080 971056074 401549013 393168056 735529374 914459365 71613767 807799580 292607639 877938020 175476768 889857394 91988439 1786974 136255462 614751641 874474176 384263455 646313078 405173992 248340809 267376035 233178495 530971814 80927353 849766175 700948229 410599567 314484465 593172089 809540576 94470998 944399200 421015755 894564410 829221149 549946636 508211172 840479253 903033854 841994832 598710982 551553475 379792006 893103896 373594153 828448364 651759156 600359270 234093815 189230731 698672127 19037137 801285838 608898673 162839245 923853825 117742721 957010113 695816189 290998580 883209879 956982002 961790430 303551676 526468043 81066961 777565237 820642431 685099914 836665852 184624827 228574070 237130872 740537959 211653533 164058158 651486955 104056027 573258235 462274378 228502894 7320690 183102057 398172158 494662464 608742941 742546800 146045590 991560403 29375774 851055118 714960621 201678413 92510094 218937394 804795126 434614794 183603928 812751681 27373879 696959767 597517884 991539348 150036297 787547065 896101197 455787511 574052954 220606437 831502964 990630444 20987818 248414661 471757162 227045734 738959633 849112633 162942402 118687695 129434488 350063443 295011165 807158786 410144603 520460506 158634227 858204049 923133262 30134472 272526481 506583424 574636661 41530316 462554133 402843336 167240458 327871433 15783860 364176597 76281562 109284437 764871797 255473161 527799240 105702715 507205812 146862135 819816521 426539769 961866400 354375464 442213863 905517379 520629436 835211033 997927359 125780350 772637794 278029115 577938178 477076294 396021307 463913010 219915127 773744360 88434888 380656279 644547575 227408360 828848349 800420726 533303536 204882301 143909408 947915473 334371043 141570832 979299214 789490202 526157031 256082113 638498807 170437821 521728803 993976290 597034109 520509588 493290327 885122426 340450585 583159921 197353300 225934019 510072086 803770008 696864639 215917996 387551124 856753473 732950355 304357719 294266374 228906778 348444636 170762396 424194228 540284356 944327740 724898437 890192698 74581586 997985321 286858960 776183047 275018701 753256045 852268656 452444127 760020402 573602661 635273740 684521562 882689137 116827523 139449471 573227107 240348144 517475788 963526998 741999033 372064263 21465179 762778453 229754993 143282434 12224732 156545266 875636082 225576994 451707154 818988760 665117431 310956060 951332177 374299238 446936849 47512472 347826436 367694382 942605347 460964787 410844456 289842806 621983588 797199486 4762831 799791546 961054048 685256060 822440351 601422120 692391032 477823528 235838545 215411490 778131805 287328365 974498098 511111104 707645849 420839724 637748900 900523851 692611590 841781945 169635742 51955907 448774484 917874014 772324392 605676123 804785800 642827735 973528545 331855863 948364663 835747285 49546873 30249397 562413903 322479227 306832439 139252833 722182927 399170788 148755059 135262719 136386058 432626331 719057437 772761157 968627817 315736097 170730549 152398622 617098661 368563050 587450448 864635176 402323729 74653792 135285530 629365303 36899406 351965535 220168398 401250256 501133268 477878711 665104832 747156911 812470128 670404142 110257364 161848897 905814720 398644091 939274755 928133930 263661497 729592524 856313565 586189249 545507106 810092097 496660738 381169551 833929494 47054702 489873064 79339732 651004294 460468701 438633241 782034178 692101301 718424970 820922161 632589632 261520314 736507749 329625060 616265960 299063041 897520596 603333814 591243785 729189066 217114414 548370497 381193189 249082793 470082625 468765875 758033268 898415876 593652940 874309197 425021920 836187544 466575366 576669669 537536263 976199157 974455573 478095716 51427324 297694461 680137624 725861961 897881991 467561 498748446 929866277 189094048 686646084 519569581 92835613 5494007 851403886 908216124 982013035 567687023 509637914 423362104 748427485 244642975 519994192 428303619 550323029 102850896 959509100 420210288 343077191 551993090 606505885 922996553 64197438 623020134 634661991 589890761 777545047 424199141 229200161 624500514 619465156 710546968 372368248 84640761 62541130 501624909 256349418 230460645 228023235 476886281 483716940 784605683 896079005 577026689 620368197 7286309 505314650 395045151 875619024 355059694 672106510 439979523 960021438 587048888 9154532 853886847 407239218 419496030 332622745 730983322 715013923 67629490 759203327 99498126 309087965 744678136 363755644 444097355 118994816 745001833 958678408 155019762 93216640 188786866 530003763 748584026 336672803 637829490 173723548 594144398 335644678 906220991 260533115 982924620 981699481 837676450 25785496 400830600 485851038 206473110 790945873 587823079 557490094 378592525 730125848 621731141 552382644 382275307 581802995 542886703 236889455 418363913 937464059 227653482 237628149 96356275 270692317 214924138 852196139 426077738 94388060 834817243 234004301 788734755 147935437 140992028 326445676 303858247 630940825 734478015 83152875 209397681 65924286 376888331 288192002 96484979 363707727 475516794 308620859 466604305 819495152 677264699 826540536 530680836 167009626 892387505 621017835 536264760 562655709 996731634 436577179 847635342 610825177 194810696 837101542 120065371 351174468 198189492 96883577 977475815 729864487 666930534 832161882 108438511 969914401 406544710 653418847 241122084 389208802 658600559 226787508 28961450 906349233 497535662 109795417 413104282 253927 426172167 121360034 921289088 855089778 900124208 849373365 545025245 986094675 385215253 186482959 272264102 938177568 915628882 720938496 621862083 813084547 261748668 601053226 945572241 498684344 217436377 117942534 750274657 485407251 90374498 500782943 45366006 890102392 245805768 916174292 310853899 824088545 501591981 481950554 476505803 134746332 903941735 561633721 96796503 274529290 175001472 333557770 374937924 523219106 982147128 379573055 546113818 256351467 965713665 826475675 335664598 587083973 401681922 757721654 396879208 346508833 292970390 432114554 941169462 401697156 826530506 37549993 669889688 980109961 66589666 815419476 484264282 365413468 599755988 277577189 899336253 855083071 748660171 161239574 97503605 26155016 263082405 608985720 358315820 352722593 379612790 594695406 591692286 348320903 518473731 619033135 5734267 764625484 578821704 547258951 218913449 986509078 466996723 121548054 91846783 908036381 843631846 536772303 633713771 220237872 649956024 277289083 753095373 99091505 278975797 575602292 991869306 196323221 945383642 409278186 650981434 653170661 389381978 583540833 41265481 749796415 509233691 220702769 436987866 801125845 295465146 735225093 737880719 219553901 618545027 366382941 554430467 222228191 634561529 126218764 464340288 868005787 922246484 128812730 482571849 183524128 299729662 711361122 969177234 822513798 811374869 191329237 628634498 962516981 31519981 693698102 850857208 167818027 683121547 719191933 835972547 777229307 949837866 59405044 187072041 546815688 632114874 173517756 906577505 989784846 81592412 101996873 756163865 208921562 158347239 118830562 323085296 642140237 284498535 442596642 503286269 502128668 469455768 610076794 582635590 994589203 865858671 406746540 412234826 522321549 306034578 464167761 553428088 797563390 852600283 615232853 699507381 454680938 563950808 818399606 83713243 801040107 5300046 68512200 992857396 936273966 667681202 162700595 351234307 431532278 837982382 930517491 857736443 280799128 536868770 136590360 980662726 775207294 429405473 174826500 382709887 217548197 62458736 720385776 684278584 584989470 851949834 463158630 485490037 312773008 766794526 357416392 18116271 608973748 556099599 344486600 578099923 982829016 916239859 327641070 621005504 665163357 896369941 787383830 253080269 727056953 941195892 936542191 304288576 851124598 969471041 759980157 646441175 686213041 578190949 12645783 267759427 408200348 112623864 989763689 492096937 661496956 749818059 608662516 313948959 224835243 772776416 521197961 587637557 551751191 345913324 368852818 84130409 69894081 882515164 240430793 74265265 160380224 472521036 932179263 439453686 332656443 827602705 963088470 578855571 241310195 623374257 516555911 627630554 542631862 705995494 311671198 850548367 876511085 934621983 514150201 147965291 246427407 743620607 474468172 295667098 918834731 47708892 202995871 617121597 320498787 361557313 824855374 253985769 957566955 860755820 305993033 395045671 172530190 417971409 563690706 903397106 798644137 214610581 140153601 925129276 673515950 233308179 421528131 841209705 250176419 861969243 40741079 359744721 964414497 279436718 454091600 757571907 611661653 911312388 177964310 135674493 485648257 591099782 797518052 999203765 825970044 487201811 732016459 676184083 504987438 741466303 653919022 676043572 149244438 948157008 23742532 431399849 599926212 25288128 461754778 316860278 631927390 275889342 212126222 231276691 405084959 640512044 375727317 330280302 499268820 83173538 988060661 107084135 338325085 222019306 96277196 723765075 78238514 131645058 189524103 264628218 423571419 533406749 217073324 7375513 367347831 121620514 751674769 529056609 869533494 441791787 645468386 401347574 733892319 401208456 524377119 788696048 387908939 689600698 194750747 586120029 594379240 656293880 757876350 380223805 984688183 93904045 888370756 841197573 651255373 574845432 456157757 506681373 809241430 202765354 843888779 715974242 572712462 12927308 107372070 438980773 57523014 189528982 725164891 192760361 846579301 627245049 663376457 725585449 356799460 412796566 768498531 202571856 498907601 113249093 592589809 546712383 47339597 634870287 998561934 62203658 96455694 394451892 224125355 562409915 840306398 255265318 364450315 86642126 707995161 81851660 850054469 279123123 844554035 158305344 924186694 49004880 714849328 415944786 730843084 329909372 478340138 783575298 394926315 71056261 101637583 505876425 616657804 486469803 202304481 757922897 617808105 506526626 698799540 603643129 864193043 175436820 584317875 247666514 173976684 688606749 636703195 917866660 259147309 879285453 728336957 637823082 540084449 704055978 592871297 265480401 155807720 618818091 598688606 559052606 950238966 436465214 26740003 558140613 953760913 999750851 557230130 565396146 753113750 36594446 935901311 325919492 988100788 201107561 137721109 909870317 486301935 473010319 610541201 703501651 96904223 140915763 920217509 834855250 160508014 243502967 75793302 877202616 115570142 973626997 79975615 112393864 122036929 862230970 289273612 826239352 651903039 231577286 399867520 585470578 949137107 418206861 837743023 439768855 35697870 840575993 878478916 985613879 968802515 692036197 31725437 490298970 632788569 487013411 260723882 679362106 92724269 992110840 139634609 916157255 418555117 400262811 159742349 265223714 707233677 133636409 101935306 441111842 772429782 143484404 509992971 341933778 239105762 135040863 516599941 737951856 163958178 905635331 120342145 574227056 956095832 400438494 876028894 368710392 779940381 860679647 937788044 620682337 633735004 888887403 47384850 196730812 68987477 764721627 824997128 245677899 710522011 887246332 895437214 248962307 39742614 794235277 832574484 879639313 526266882 859368132 380023360 536903762 947707503 161876938 790601995 739624153 774937023 320441658 264682228 468668525 300933290 356398246 942519435 900954376 454605629 919389970 464211191 403384665 605002582 422910327 377748081 404208451 486523178 801653569 870959815 68387932 385571776 421083858 245835226 904620143 204571508 696207869 242282016 666694650 129439861 168392843 279292706 724912305 502662982 93491897 427645439 793845753 228664640 913074616 405980648 709539693 735902991 395276332 608816802 521559901 793482545 86709422 709468423 121927498 258862715 234441802 155209093 470545004 399239315 825043202 389300893 806091308 340673654 138537545 946791269 9634986 220009716 930964872 481820167 799110968 12184879 609449116 320697920 707606236 552086816 520187990 70024161 897254610 592694290 67543290 978164562 953413896 803360549 473396416 355641354 998236321 427125708 299339863 773479192 862432883 951766095 287342429 310739869 924599176 438332490 852559592 677005648 736382369 168614188 136769536 693353720 362687406 335429817 67925026 843007222 162267223 567188361 481183167 560803256 395015798 288931719 126173370 444608583 468750747 920039026 356715758 750643386 616957575 775902303 462514342 533843136 556002225 15530037 884785955 360487963 49479620 211852335 707340058 429723935 923493919 457903710 958816563 76583223 629470035 423910181 603948683 234567009 310693289 911919547 378882355 627906221 578877850 297575084 196768942 444910273 814288981 28724312 266010231 682697816 564639292 91773299 929754233 985152446 571534695 824080772 916310933 737466198 727677471 780132198 545012256 225946645 514147684 754382281 178568290 951113220 21125992 436850097 898568984 319992001 119396882 348946166 399748082 543509502 378648444 755716803 302541334 361793025 357574262 569585176 48278683 708157987 937871104 387418696 218662671 192154961 977617619 220861307 643474930 899012238 485819353 425042733 435473720 373566831 492490929 433165485 376342731 285320861 995804972 410757535 563779847 863160407 865653459 744222843 494227261 881738477 612180830 518679308 444854320 564721478 234348350 609515761 171417754 241584475 304348692 998577695 159877032 212632762 13591863 350211421 61688698 501900547 63717939 219642054 251657636 863234670 903107397 59055691 944860080 577190980 915946976 318860847 58634138 213542754 761146154 420099465 280404562 121790649 680023679 796515525 593833022 225622480 191025645 208865827 891277237 245413696 857364151 217603639 864263045 28288311 939626963 110643303 600033645 651886582 887110252 617227632 609680548 31456851 245017696 666040802 692723793 425120824 937797314 930206879 690329616 60365602 978144345 938962272 304381555 248933538 663492128 56856880 645834111 178288864 155684292 423294703 560927019 749682451 930653737 151808976 264361444 516300810 229965285 720202715 744257804 299981478 666038212 560413804 622476662 696757853 382073666 382087346 709730284 484070329 454085908 884160561 884036010 842718935 868220831 395469120 574534880 915930089 615277439 56416140 164276531 526498740 857878018 723841171 386140732 261792275 402666411 825831466 37280263 304897138 972261551 620480248 585343894 66867795 571113339 773710072 162026332 727263181 661573420 640855547 699483587 431369224 538212885 189145636 908595622 150006722 349675069 106799722 921930455 785220557 646973918 369921305 635091610 851726222 54951911 444994129 825659944 125946752 358142075 89687174 754770734 160998831 720670576 202259710 77629003 589466174 739393745 408306262 247226773 226568673 599597405 45107454 94483221 347995747 982000389 242917304 122249542 921440034 415192434 399309341 498430362 260700558 900620412 85980952 999064821 571482541 602589876 254470504 981801520 678618778 530037723 742843938 432205463 340211458 970501993 348284718 802505836 989512613 124049159 759779269 770412898 427036123 584420117 793555193 459535138 254736396 121323813 765469229 713401289 236971063 3760766 882688409 383253608 362597996 250262682 30506695 572535683 738467666 405745064 846545177 840434579 537191586 522420490 830632512 403268996 818703273 846501848 229703366 916512055 311122378 985174876 257553542 190739457 135365882 972530580 289972014 681267498 461832259 596352948 539401924 311219312 625859137 164541601 998001182 445959297 811457960 527791990 568019816 77789572 521541052 914315779 16826530 586272657 830741207 232811849 18098208 999097140 469350630 117733887 824733960 909893614 863725036 690636048 432386007 831054516 520451198 286462491 158468829 91637358 786957894 268180466 168985788 695655545 778657921 213209883 966132973 907818278 408601216 366719058 1043003 881319481 711412267 28886789 694855493 982936938 794188921 774088150 998497536 497395431 718745081 909962013 132706611 585439184 935013708 965253988 736501498 526092474 595102120 390648809 644116292 177472045 649683287 325863711 738570069 468919078 845237302 850636077 171022661 169532310 17061431 896823917 579895934 283033824 36805599 676239342 559994945 159184991 748418248 796789747 520349218 197468126 46925856 436108402 305258120 780892190 884101929 842899862 851234094 413765971 357612983 540127806 113601957 973954983 723618997 835164284 568633296 344885174 396548768 184545814 618210406 592257809 784769034 551778568 592056691 483651771 728896536 960351743 183101655 807598511 184326917 417046752 455774405 918601047 735384221 283507519 499128902 188385302 378130114 375454440 885595572 939197376 159007211 495526490 873449279 469542941 110712224 22446407 632564587 446654826 758798591 478806806 107455888 292186327 294813498 500461921 898627161 794964233 368665111 683682423 562581573 542051994 223805551 908283355 349698602 260097684 737078447 159427267 352033197 697532154 486928730 164292250 450707914 255527232 214887300 996895102 958110546 843683533 229613400 633003202 148795240 794527616 473263252 673138542 222474756 169221160 307765512 819458746 852244080 642493195 761362715 476463255 696596429 850253920 162675782 798468646 595139471 521158869 908931478 393456190 691738109 953033225 704491566 784818154 817701554 277653779 662649283 624393449 87384863 527057145 248788254 354154029 512199430 824100666 607249054 569578076 82947328 727784005 507899059 158470738 163775737 535012352 487391844 784400285 718710447 166792258 477301706 448229120 919143990 878072152 46652051 177443056 715460214 434432644 797492352 708434970 391669163 259010681 32662503 320946139 559065061 774931937 455746097 910235846 20905862 114981847 728526941 526033698 63388614 620998253 265095547 888714602 685552946 932526375 307961651 167292107 190192681 721121663 287693884 142074281 564101470 181461855 17197284 73909274 414521433 703693737 482969999 315508329 675518966 779916467 526023472 319206292 576638180 126927043 790186961 69609935 963466790 642541208 119888657 512589567 226088854 25278945 246385825 142247232 763446365 940406211 196829382 776630112 875306365 454840663 644025050 351959905 631469127 413382697 175039435 775126779 994485989 183963322 236175003 673616407 677651153 763037439 290803422 423470421 797257052 444659937 391592767 109048455 189901352 657873595 235330555 776439604 495238062 249906143 987440996 296001302 398530490 8043281 898711647 975410332 274351593 145064202 364535527 963193705 269110322 632806646 497641096 96911059 824360794 866920695 543126244 450479717 172284798 543696544 539514930 91523165 58962061 52441466 979618746 331728942 419403980 894360962 624780378 430887168 814481232 366799273 924723972 281976875 40858759 638047827 342471485 173965760 538153648 16189401 481448864 997772032 735115870 909059335 187616345 402061538 760328953 383496606 714482603 621414545 246333244 345109715 310740074 971736556 149192120 349794766 365533314 41721349 970787664 656123948 393293678 502611875 275853755 915606654 645786817 659705279 475742214 938172616 654784161 15611914 746808591 784321282 474766919 991534950 420336139 7603611 908241024 485081705 152189696 239398385 427041839 973703645 429569868 531576537 691151049 115075907 931527708 672246046 472252119 77045579 401310966 251767802 666894455 864457309 882334256 937520030 507456988 192788243 171307894 617947056 272331722 923537084 928725576 668559816 253893146 536127451 936303225 142987762 370550844 980556455 456033969 225985327 928095664 176800649 256566508 571222515 182135948 167523744 218755833 632977064 201616377 77619520 475736317 256677930 342838966 742471278 277258733 16001610 636356500 475145062 606475287 239608395 555947511 554301718 619276698 809339752 214571100 291278240 408629481 363636556 494423757 682038492 900527948 742272152 956248942 308408019 347151198 753482080 17335540 751410757 781502352 284608430 944326441 284664100 100743333 821123582 648847210 244653335 876268596 389545409 340992809 552740856 757713706 238836698 293294187 346234966 215476805 491219235 671243338 847954420 579992729 796824297 228886900 520778312 179422735 683653484 301613226 410062077 303984097 800521313 958916418 117613169 113730336 945345391 696998310 289513016 924591918 864769717 988882899 387133335 872110148 904419651 878181851 811662345 147114477 36487068 482333283 287483326 378865033 841123898 364725541 974736407 652799179 41884682 560443248 305220140 588774460 585544428 86983331 926732614 316672438 196362804 810039989 92717413 258490601 731043628 416328880 185843642 970543065 602307472 517447985 223397678 181575518 125921808 995300074 462153434 463828386 5097681 998809377 419218061 665569959 574792684 178988590 470428490 847423167 685162990 392124417 723832774 393741586 236719703 921865369 848442606 254278683 82731547 191553678 275962975 422170667 661259300 202429832 794829549 422416357 564122061 620486341 35274013 485566144 365548904 820224407 983486890 332233609 524269754 399332 374993923 994581214 321107834 863965860 531557067 344905139 165049813 361404007 765537368 330681297 436989677 253562317 414090038 826231378 813238101 48434699 676376737 255499815 705934231 722901868 127401742 631924882 252084398 50105806 857159842 790069164 179104396 130324257 627581881 323856608 452757141 148867052 121684321 986747246 613799970 136174536 889404380 176309993 239618816 395663330 451671842 279458233 402050542 427811197 203359580 203009434 624166178 777800814 514713450 328599067 522050757 129821086 688347998 500192544 919478642 669704076 946911487 361666913 767782587 556950729 118172743 805374185 903942052 374570105 350603238 819011479 680070438 778449624 867476412 463404960 613045422 354135475 416705890 485636619 655840411 43768555 371733154 952881972 422751939 29702390 209784315 375834953 75188462 810412894 380271902 350408912 133402970 172600127 205518707 49898271 196371253 472982989 335802005 610377955 32473894 322785484 7826130 778543258 677555653 730021142 179267500 219146008 832891935 948247321 30688858 196637702 379037235 798627158 135278664 907851870 919870327 50266339 91525522 251731185 860672339 88017898 716694925 982746849 952093092 45305896 162613055 320677927 603922747 484753263 455674338 167280654 80611420 399007780 20062053 325462966 647755584 210348993 334035178 108381330 816491155 479079764 743743305 950209258 832603638 804943871 322335116 944627290 917251710 821757302 927553393 694960721 190379315 197824132 95410668 468070547 154698130 143946118 770943906 674173880 937463308 372932846 138231150 71045547 453803653 725375425 10868959 468610091 357995733 969487386 21486776 237793613 147752778 277735333 880406896 840300536 331483428 114062884 322593712 370590823 19558680 271928814 54717143 29960363 244561358 664245867 637672825 593336615 527677027 267046553 12566492 654125842 993339112 104482698 7160953 986034424 447963873 414658788 315467905 322686777 610694086 92851551 626627158 118179977 754796421 842319691 277586957 39627886 407205118 522455815 248299507 440548806 717632646 338769291 812263173 210827070 792818277 219416287 976168822 204566491 853834072 318875810 452577581 200332661 819806991 629821572 829429828 318659383 259660464 328122571 262792074 959481377 699358546 800846546 724405506 732173190 81115779 348218246 683900002 2284942 662580419 506716647 290385301 197954997 594989063 143701901 342269241 358126410 931371574 721680161 703724322 257245169 900735407 260666591 710623445 727879714 658345410 67733275 854092814 934336424 197884210 419422904 359626042 758916642 442468538 748052402 809696254 412168581 462219140 31224214 488623534 279769240 68987827 114254853 861597654 829247350 356837083 562799413 898053813 562048528 503044739 134957679 722591677 469323945 417276074 579468946 964927509 768568408 326663231 99381903 246621463 934691209 179619752 811537899 78236370 795980924 196268348 469139776 306565257 404588997 563141065 106374331 290360625 328590026 320008463 703358112 504907767 218254920 95320642 59827650 350261944 544858831 781197452 745217035 396680840 321911105 383925128 369532666 653375532 697317719 905713608 607586336 882969759 590533148 767768913 476302242 94737809 176713328 737399322 912151226 509752291 641132422 889762961 361691190 495830572 707740518 659898389 673598199 556663095 593995628 969343869 136337012 669118595 423383751 669166479 461919029 766167746 582113531 588683146 701125464 307774554 867124831 526742941 795450126 388899303 483937440 994828141 236022559 907398839 355225916 859602579 769937762 481851724 488044040 41317660 562399558 714689502 355116971 427637767 246563917 817889494 468922400 660225482 320474251 227431764 292514616 237469390 558146859 291166123 433888534 747166190 391885034 484515296 60081329 718148348 16049306 563762734 460801109 196841788 453556129 260902276 769794082 838754279 243017335 90311173 633968268 676077226 94376747 686427015 739801817 344289316 745531359 650102805 919451046 900274795 7557448 905031789 647536994 975966088 312207151 893998211 755626194 238850550 480191218 809445372 914288524 178350887 991097347 785592500 642763899 446596095 608797800 707411257 864292449 108515159 206205242 871473485 757261392 364336251 557894950 791791207 794694704 312231853 656101103 34969139 971929405 869700256 178021353 859079438 556062854 34588925 838756992 264181387 825872751 746295009 186931375 958239728 707498544 21730653 245630602 543957177 125467219 428242677 782663348 772013844 229866810 549396514 776540393 250457188 94775446 299802576 306517622 524430783 976911089 687455712 792276668 119964784 628868134 254248871 253055409 733059189 111992291 549932142 438450270 561429761 371335726 578307568 549159778 866079995 755409885 412301022 170904941 380757886 184519964 25373534 960316358 379108951 756531179 220761992 299427526 155420298 89588894 851588072 611194459 325907150 372750939 430115839 470693510 604636172 495650207 32598210 968317405 776281572 152191162 97483545 661654537 269017895 382567502 517656673 161323593 33737310 970250196 30183147 550078446 797886018 745067542 759352955 163832029 152531010 538618294 784573641 92532752 208820992 308984742 440405507 518225941 349291220 51558318 735059273 806858637 24431175 395189994 894353200 338644398 618710169 404941385 307156032 685829826 62475837 971557135 188539766 324428966 565801304 668518227 878236867 846166348 122704453 646503554 44767626 620743993 677129747 817887706 56905510 221311496 275404037 627888880 706720098 839514341 283631377 305370155 602987775 259662098 993241186 141373254 266053169 67474021 464891863 952321490 970018 155074504 458982785 282930097 966052974 866213816 408979241 365788061 994681766 161889991 430768327 817690527 750388173 547513883 848602892 383394712 26762206 902747628 28262873 260439995 241103172 564311561 936174790 509244689 36819040 667913300 596305308 882849780 106095366 921001793 764229851 958047380 238232320 863015515 889144885 290668917 623563914 291820224 573206801 557337583 200982228 857863072 451976457 976725165 635994756 996884673 389373036 358830126 743230001 360715518 908397757 560475975 677068521 855495363 528659250 904768415 726441131 849079443 498072373 835803186 224202990 463314819 719463143 644472271 468281625 521557948 512082328 385725850 915581704 983287548 465463376 989295498 817481102 553110806 127528522 735362796 863630573 641969261 165281651 834091742 618718559 850398845 364178159 752111317 982740881 365801043 153892245 745695000 576192291 526748943 815966830 73960258 232117033 274780777 937357626 941480644 816407725 514571562 313433322 311942496 146182954 364400558 147034151 410650031 156987666 827609193 591391690 860097436 27374666 733563998 495370594 715888871 766847657 114131369 851571121 869422500 727536252 338651639 736405295 216132281 613786373 298765065 982104198 870877283 967618295 912239925 477412116 8233649 765660412 925456357 324481388 337571848 407206447 871492629 396458965 151413661 925862050 702778585 712194761 995140606 131900378 18917333 107331447 189988746 829346126 204239299 643956290 608148724 209024235 630928625 499577153 47117764 443364755 759621568 872241341 325143254 110469017 513358630 676393397 461453529 627775814 116985133 809031261 448507600 350649176 582586226 71348378 666142869 591960958 914375590 324472968 159722833 581577949 644816401 794974965 402496005 209384590 649052682 646459875 900500997 469830173 992164992 971477257 109093240 429807116 568631412 322816595 777094105 227114574 310604668 942745182 727843961 525977804 958320194 624747773 257977594 778180579 548553475 36652471 772833749 766140132 592437777 251423814 371037397 148488851 100456530 311921945 271293338 455270313 812342718 806248403 550842392 939116882 887864804 962089417 983291157 525697456 582866534 949869704 804298414 64544342 541112184 342508110 291956434 954776269 90306661 458852492 385667525 912475922 766931978 92310634 600481951 585263126 330205529 469874499 404876747 826848317 985847768 224004900 566842249 766152672 873438751 531860305 295877740 515764171 233950814 33447617 154687964 646048191 90132692 450948765 503591572 302419697 415911513 641381573 213416741 618163337 261562069 833624139 702164594 676700196 613120454 105490421 897887282 937935443 63517887 904347839 120596338 145695002 110452707 488409687 400036624 702317682 210766446 344240032 416233025 558157511 120048940 342179631 392977163 920394618 196206336 229097937 406727372 366073184 954478943 840935683 910498993 244596033 959533266 488825720 907532352 911614554 684033400 263949719 531365327 323856091 398550401 145812987 950884618 229408874 229960628 876429809 917038961 915064479 938760682 294563325 760493783 187906950 383648656 59934805 251034084 43418144 363320873 414860132 821158036 667648737 294122954 183015497 991901366 435736627 252167581 641502037 931522671 354954994 385065054 557469841 999647412 863531247 603296481 111071286 246308819 989277550 441398922 457091890 507229675 927796135 289897427 215750058 991908206 815343432 253553354 150537586 200629670 119987953 957690768 360103575 191902510 520023222 429017819 343671254 845387893 914714273 421982324 208119586 167475263 312906030 763199930 336729122 49702947 177207758 583985694 587663024 296273677 494044516 238975397 499884379 298592190 260898507 431510889 671478246 592843591 291988301 589290520 560838087 640995730 312257837 332743283 939928745 512235481 768430111 700078033 832564970 404174125 531520971 14718617 289422365 816177392 214350925 113558731 484705674 147337563 606088376 941955192 921873065 437345785 846926222 850443846 888474027 744982570 741007177 439266285 561410033 91907489 907873494 783378108 637508242 203863783 75191317 626420756 206782170 885006806 403388506 14853612 713570501 681341982 880668399 252871500 167513480 885667267 788814224 202992338 71067145 854400412 990342893 260098352 283733346 725018070 866190635 31117739 773656418 456264816 678606948 103432862 840628491 797537725 747093794 553011701 597796629 357990117 251381480 624760243 942141546 648907363 87772841 335898220 592608424 961353864 821203279 668253131 801255074 870731255 443855413 592204557 287352031 772712487 384741806 769252741 740993050 96261092 827494268 731354390 697243072 266442191 205918553 746588348 764506229 305027801 640825201 995086595 571523215 963972812 329170662 288329358 180468377 458926786 169263179 770503314 558785490 953021868 340510762 577281368 608216747 80813260 269167486 358283454 552095053 936336955 547725369 170356407 723572241 166929764 813342144 656472518 658977285 929112455 528926058 75081095 143849838 236142135 434005252 973844775 357144640 312943068 941510479 812863463 241754792 483415602 918472833 915348380 57750403 926794952 272893632 207074098 709410020 751284610 18968234 42022692 131459218 996247832 902296528 700357126 646796423 934541205 760936246 446730492 246446450 269064920 566256085 322446912 314383158 590373142 860910874 451282336 238690665 977855830 532640612 223485181 859586518 584578036 415756425 601559757 626737915 493814046 939204690 356632217 376486540 960669018 374914810 821188480 648401390 777406462 493901235 294525106 56782013 365067191 676955425 789520887 446813510 798788867 955945948 950509094 146632461 59428022 804307187 808519086 410710857 995899001 619221092 120792336 883458403 90405702 778793381 42303330 624206715 822146030 995587102 832964302 807661283 516854163 805865388 956778257 859072674 63908910 346323744 222714876 149116914 720910602 580849854 417973238 186175682 970105671 503909567 567736953 50673716 9090648 690163663 122866321 331805984 439879813 711308175 276583776 408343696 559079786 350388500 664321692 13704258 585163894 442501990 310833423 547797289 444669293 283035650 877415702 361435116 679719655 750685529 61264675 207706982 522499278 803086671 374398012 202167076 549936868 786665404 500184697 946234858 543042875 100516078 42979721 228521518 691631291 452363302 443212078 944933531 252924831 65254422 561038268 203464848 803866616 403559785 5990558 475830431 451487273 786047291 530093266 291827982 844171625 725894557 88517992 214453849 796428356 754600467 63116294 602899374 843316506 183711765 724912999 692571503 815845023 250142097 311186391 168974772 97751641 71417703 980054457 350642374 196271910 173519852 327107073 237327269 155616691 815479656 203802811 145020036 544963333 793913496 128929666 783806279 609425652 737291564 373327369 68449292 607406763 920414794 768200854 54113695 477718314 725513993 536444034 667198468 715311556 358682871 974275258 572773617 347564705 837630612 567349313 895293521 484606269 362252757 448252076 286644930 810434791 790830242 626975396 388928024 864400707 199646551 426965608 974737368 273829065 907321159 754485320 449950141 121392451 797530420 938008363 903954999 346163795 871582681 709760266 612743399 271007723 971550304 689803634 838426917 779665107 407899884 193911814 660048506 233357606 318681361 805585659 202448166 374861013 32603735 735489947 723427995 47823906 221852858 749344450 569193472 150493735 979437357 54870372 434575023 361709901 659856914 796311301 39005367 898018261 497659843 61318207 149400922 642136658 748139277 602137408 48195472 19581997 770432432 184632393 190014595 60891680 16523488 54903856 838029329 238350012 868850631 53656287 90996045 228150499 329884672 920432595 975709439 820367438 962940958 525170333 992402975 927510024 776005155 277635940 10564701 690728176 94406665 567745378 756466332 626071100 212382269 739754851 831723891 800943601 628506142 818797129 827784107 332886892 109882499 905946506 834313924 113092060 105938994 609249712 918931823 180612293 414251114 906516696 60588565 775169662 957686106 188189492 992653647 820683956 573740199 503714185 714714731 550456037 778690538 586697650 51580910 995434726 295702320 885261595 769899021 548914014 363622264 787233606 34923314 50253384 939672377 837329993 149428349 703995253 822448857 146970958 173679680 564186375 492117814 727861011 269597314 667450360 549139489 818279528 841984893 448746129 52706015 328338099 972966945 105123059 138559655 695651951 530637967 961444753 302700838 547565992 43348638 730421172 148400893 346338944 991859289 693988342 947095618 395389358 167658110 18929351 809353467 821880570 528122625 468537580 818972070 987812802 80778631 930931194 332094388 160004473 85132780 146236639 749427209 37982754 64089789 929093722 773593470 82088665 251955646 362756478 794266976 837919306 482586726 533109811 846468590 269644088 84174942 691598261 49463518 453856504 819569158 669312787 237384152 722889203 131480304 675031473 2681593 638129192 281914979 472262087 366601042 662312359 451768281 188148447 54517607 663451927 538852737 386248795 329403313 883346993 662661310 632262124 273361180 56126530 540099238 606052892 859006346 776783533 932143235 503581893 414918733 223760231 180865622 490386840 903166641 136544633 761539919 795117720 895507568 723215746 254016598 451649692 371449404 382650930 898835078 142004688 273198136 969443024 830800300 624307764 539932799 370711989 396456140 730751004 582743964 46560975 60585116 938155694 514536720 825216031 721253896 484854887 832230352 541724219 817569452 335333782 805588676 329338061 934710621 264995552 543357257 241856786 713076897 682659258 54457264 551814235 356413745 764681458 842470333 985844879 367469694 294384935 675036456 119944872 115062570 769920332 640467488 585811249 344039306 618449193 826599875 904514255 823188523 444562906 991098022 675897013 654857290 26669646 572424531 283314990 687971930 839835593 917509830 705559575 572951170 54611042 601539312 361453921 789641501 390636422 680576309 623388564 196227896 804127859 498427117 355657287 816976663 230458558 663760358 266871977 820477616 335173838 792543456 577863675 671092782 303536222 897136144 143313428 727167599 481480959 632662430 412104156 324051847 608027283 724669990 989740497 927852347 371954643 582754107 385207941 471246215 158962891 905234912 83821853 354305305 741687129 150308109 51045332 423731155 484133809 518554672 867208822 837634380 625972443 751677353 265808101 849362768 809871155 881311564 277209496 762614364 579970793 441552611 81395223 943597091 569753727 132668586 637772160 930292747 226513742 80128465 270695685 551441329 15653889 848351486 536431212 800144225 590753559 550650056 612420237 822300318 428855141 69013053 299226584 136236192 986490514 459005277 563577548 350362833 960163226 960700828 367970945 396499279 458514252 93745252 31506719 349751150 262880972 180994961 662461541 493675571 556956177 168575987 315527715 566681305 191321704 438616527 907536576 353785168 302764783 186306910 729164212 547766457 94226715 900969805 912056847 392440299 36216115 48377148 543972081 393345522 775959762 452925503 980669968 847609994 261600105 923139936 840624181 685765800 105311418 931626010 754580927 929496306 126036318 900003552 145125150 109591617 187511616 55928212 648010585 903600678 232481824 269033488 268875401 540414307 556513298 592511137 756575324 152881774 967236604 10704518 811354771 845975537 809346075 686103669 2622851 860865868 979631742 981343511 819191960 25029906 565618570 248953736 663736526 865067400 69521012 248522200 397802294 12011817 726245322 544595852 781589367 375301412 916291051 728696861 331293770 793133532 845186954 7768951 769078781 292758887 263861807 133012092 367356657 604564496 434017461 494287231 763869213 453525206 668173773 267237065 607831432 297623018 801874042 21410584 758218962 997324085 149260948 639299099 507140012 930572495 944823621 432638711 157772379 34186121 45438350 690362053 649027641 93450084 812703427 540387601 529833524 30714392 717214475 401337949 80960334 9569678 237273569 571574940 770180379 757795942 87808150 289786807 955128390 155729522 745803980 926333964 340481804 733038393 16806140 993803497 4116415 694544501 440886001 994697493 70485828 314948757 796608075 922757960 845449621 586575676 270626046 134944943 261745217 320643520 35780560 733689705 594875111 775093164 5578974 917841676 799437758 922811198 224373271 264472352 833183248 166539754 67328447 350599074 81349819 964332245 311596270 509324163 532689071 616030554 716991503 857297703 320569202 233888649 534290785 155075815 537443231 631918243 83573113 644010895 235194210 628847519 687662014 499992800 323796734 730980265 550723820 964161551 684349255 185929885 695611282 969558596 103312936 749966736 603393172 571574045 75794207 223510856 434676649 748517160 82016700 288550079 595960798 945156716 725365798 767094692 310687249 501334241 856633749 590302425 37487990 339468019 64685273 474078454 623212566 273741315 242671826 596550341 415480139 761227494 222933237 285700036 923719238 342045284 642145230 568604838 42604681 547591610 387101048 43372498 235316845 19402009 913169447 1784802 180076446 827631140 884735646 623900198 64619930 946502774 272230585 382500127 752210997 219862042 555380709 154984708 756933143 256430097 579446179 442790976 996236092 105393360 967260169 38740977 688726899 70603967 128443968 660378731 364606176 712939707 813704455 917109684 367129723 779458708 324932910 939684869 396586127 734932880 996157468 105928783 894253371 205033190 263507530 775388339 44167924 797107780 989205958 621274377 243890945 385931338 486724785 980708186 507468286 443557645 448485825 760238182 505017946 805563029 467183296 822476831 308692185 264876894 221853451 403434540 784276754 260883163 226805267 251426407 877956081 249251822 856963039 638921568 688665655 319068530 731073417 284267735 955546357 753033906 546254269 759462981 48093205 109233646 581764413 684251476 388799185 928409309 480212319 8644195 85835834 672010534 18070669 750025475 734237618 987242726 882797764 957206140 460338034 39490349 718906902 213366345 595358981 865717376 592960808 297032855 373455307 695337305 200541108 45942474 76313975 671861922 16020744 650001401 982684818 611941950 312622214 37993837 155877621 467029377 330181666 444858662 624288851 674711474 538759399 88903766 968189101 727886480 56120178 108983779 666990811 375546570 920161909 540740329 714826506 989032582 940574518 840238902 522730809 243589083 552866317 510424525 367299515 711813974 533356265 253432164 874281911 410528377 641866188 345507557 241602475 98217527 641303882 91548657 576924133 341371770 603784975 495470936 926878985 18307486 401350230 545432482 452139150 772128499 904046194 39517065 886949184 210012478 916720969 368794749 965962176 159191608 498883027 93474079 278241023 41118222 230955680 831436230 553461447 951227359 479001167 291593469 387229746 744620097 229436440 818414594 621145648 676819901 567359555 648710985 292066310 284736334 366364335 923999992 617599946 745602790 700612940 762327912 366363880 270585834 740591265 30411690 893501600 170639281 594065479 464263680 397022853 806090248 298898795 378692191 727140095 139021745 998415696 615976692 318790090 540348639 860694475 595485340 693085301 987646395 47698373 170761066 843365092 747679459 644188605 194062629 459061199 535234534 892084291 751318471 336717633 496101833 322153086 424048639 504105241 477918597 988448935 756220848 255568268 872649862 647682700 939369072 30822305 619863341 492417550 831304202 487390131 619259215 26635683 924157180 250532339 680617141 114872532 253091577 345343204 79217050 901555392 320605033 802513885 577193264 356060824 423655396 605913995 356291611 211045409 347759803 249652844 609533172 200651317 736581487 44466516 617545927 102442818 862128952 265855468 110207893 649397705 394890623 866753326 805321939 753202912 615033444 254452203 961670633 589241009 907265849 652767045 881938101 344779001 961204484 729147189 105088517 381138826 679254273 35630854 596582432 903705289 662259486 159082456 131291966 958791216 297136766 505343774 270351883 742398157 28635127 26549536 249588264 750653890 933184659 952337274 828154026 176457923 258746387 598847387 395716249 786099355 546818407 269594439 6081906 624281511 389161783 972137750 984333222 988622937 856639069 566798066 198580505 136937910 839318633 577528477 177621924 169441753 596673052 358941737 521808787 158337134 148337645 171528318 359796775 484262199 958260359 710123991 367102485 269564555 929368905 415863365 874372613 851769298 937022148 593418283 518372628 980746250 305165633 571635904 931233618 234037829 740634937 327921808 137471045 396619817 879556570 889777659 956386148 401822830 463734153 228233653 613030045 37322083 195470427 896178500 462264528 982500714 662636186 40029573 722031698 975318392 635654470 665936680 6440811 210267542 162731153 639265583 414163160 998394210 296131170 251972979 383503945 864478351 777043667 507806495 447055076 714725216 665905331 539311411 534493633 174316849 489353221 521757442 244836971 391555310 445020799 410983604 308110181 239831450 69932556 974472645 542856867 67809994 727975243 8734596 860584461 38594343 12314125 259940245 592294912 191948016 987020763 780173936 199330764 848811125 372291181 992055263 547502135 184054429 67295796 402567556 717518840 382308705 697668817 970767185 172545085 91250255 595177371 175766541 99045669 605578504 224693278 271945174 644049479 988480962 535456407 831988378 435637034 997825478 285653625 898441884 5926858 724644339 164045034 934605558 877081882 776208697 362400070 396079121 484231036 649818911 405713819 948068910 490636106 978816574 995382572 577956320 900166481 739784388 621924079 215272592 228482897 247099122 674161679 96442616 470835838 114839966 838304362 953107880 678667266 825005234 384174867 224399237 357491065 715293611 681224401 408234565 815685491 785872411 811574431 972463860 671753205 43881511 561392682 809248881 763559160 554468617 387120726 930438129 859105513 901058959 647190969 318147964 188333864 597272730 92268319 164818027 137873545 95456161 3878404 73143280 59840469 127503147 831852829 281491342 925934666 166906712 999680719 361185181 678056983 314760793 832491958 557500872 82845409 787399412 203647776 205408654 236603969 101599489 524926864 287667908 833620036 314808303 98959675 110895121 287522793 682991935 835835022 81536880 380830631 958387976 430399142 643205810 789935076 515133554 276812758 473075193 704879487 327981627 53528613 205886527 72087623 113790773 879307213 705737677 341587329 84394181 256426429 17999044 289346150 904257382 682883096 148720535 249477282 288765732 13580468 49249679 491002583 121915938 780064156 291986246 473938712 802014996 91579279 363618604 186714990 775957958 526956670 390538758 855949910 760329107 689132050 273221993 458816833 544830446 787595811 639521347 786892051 569653981 169812802 422191955 622512805 833489272 287020848 222101932 923002180 949236847 441136997 575601462 397970223 521757826 278782858 620312365 92700188 397885190 610936831 504704672 946673075 92757607 71589462 348193011 331425810 432505504 986250198 702230621 58479175 826477508 398476281 578481259 322409689 862006905 349426414 33958523 32160832 940874360 45710359 546809922 666407784 862842639 433214092 685242951 459316275 551465886 19514263 134745189 901210100 156932125 897423158 472215117 650602484 452044693 601538717 107070978 812951024 16328354 921465009 493108315 819547801 682371576 212589709 771031940 9121299 841940699 464078337 175876989 101276790 154217893 213223950 41536154 210687568 562478148 417517419 295291905 888056610 86213817 514910467 974378031 894837726 456936858 667459189 336606067 271561584 853003408 751320211 104308338 54282034 414475482 280767971 35664545 28307829 60302793 609294113 562027214 879091199 911415106 339462075 523148184 763340936 867184703 71445075 217167858 142064444 414314830 396255553 864279460 295266108 942944528 391990031 724592586 917639452 593682107 778064635 283987795 285442919 326017689 279101304 627678083 634102039 144366215 52121261 177386609 118499869 465974903 280991988 430288266 640146399 924680942 570433884 956325388 588999604 283673478 842112040 980286860 964082026 373336429 870024014 836387953 516157377 254937573 373470457 468896886 554304750 498897602 487065608 771487532 207557913 964755695 118896781 999782005 894729439 218586345 617948750 916702474 986545104 123811650 497513799 635648247 808697074 888902943 250784805 956664346 125458236 727546043 879584973 360734375 958738460 894643170 367305939 467134374 465666546 323957367 183166467 529226611 768692370 771248366 206833372 681724990 379618758 967292114 545469200 631462025 534644682 504668480 453208582 831402413 150383054 463475563 354551128 801225813 169156728 39584022 690074965 838173440 352478815 253349149 652998528 599533187 764084369 840237036 62844687 621321349 579454734 633575942 770456429 823294466 555035978 759156351 590647992 898784713 935970479 521462147 506428995 968263934 447163673 95416525 101863702 18048408 699820376 961606192 393878633 566494948 951064497 161867794 807768109 383704064 236906078 338995692 322868099 292543073 625840137 55575755 925698882 19330126 670112853 635931090 302158965 184281954 906711637 196786358 918548187 247558414 729771795 830920768 267996518 751450388 443125771 508398799 381423292 612899341 50441133 233336531 846649273 629331940 640712158 681025875 506277867 421676121 643919479 768240232 365010453 87899520 379034053 924151232 115569324 430073919 357618951 181139740 931744861 438284499 197464308 271804626 876677253 254724427 335378482 737161803 835086775 590550539 899153888 357265030 793579578 227864139 644177421 8711316 623011464 508158102 601470526 307347482 733983697 822525772 86491628 337535954 30545526 788998944 920158979 166708234 283609742 517769626 325951589 733703459 285632100 849645461 14607973 246301715 347173110 538825666 519269709 154136292 34250360 905304868 790372824 220120883 773051087 201447827 223245240 815644337 496658455 744273977 100549649 63361957 958312222 509597207 860811260 903316329 416033766 758476417 959233285 254498537 488779303 298226078 797849006 51700007 358040010 307474153 426660330 450123193 6138735 215410611 197242274 414886217 662891752 796194718 88891188 441006100 339847100 775001379 275530735 309162604 597901733 490158093 440312984 547282742 915091218 551993852 506799591 9905261 878288806 789488356 115030795 697511837 849972919 282089355 66807842 298634856 956614096 611579918 610447554 681253125 940575535 921347676 764012659 827286204 121474631 312986809 627194675 398677611 47118400 47194173 67785712 465351428 723862642 885645139 328825617 111479309 835484398 313781818 138465518 20264478 432620789 190622087 65156691 125104998 11638142 91418273 222507777 571383335 928398772 223936580 983171629 624273206 615748982 956631295 152571648 65866364 299405270 514788790 490602773 48384375 178167195 546153504 387487485 40759737 247636414 366320458 227188926 965633896 69703152 463375378 158719056 105148349 710888211 642115500 678935071 932465029 845613501 716521505 727112076 9029539 983895224 608843467 515853164 35613068 460489604 883567835 683811975 281337289 385600724 968170963 280183322 509718649 965164301 800097804 535364182 421669836 721944778 54761266 4511966 583903369 935508314 211612354 865111885 793573513 97912640 146086547 562487214 811973945 782065331 433525578 164793090 434400284 284278812 605956836 529761214 847460167 596830874 252491056 163540554 28120548 80084609 787639890 592574851 63645359 840386006 912488770 121481529 723145340 803363029 984578123 650122418 199446703 296732780 646851980 585260325 256321986 828729533 351564154 479054912 884165058 201295776 46148956 255211683 837705427 365491998 409206222 610334819 427437992 824831479 660721471 404000136 273838603 920061981 379019379 230180495 540902235 754966327 463783169 293989608 46860041 237418271 131298773 234049401 897037594 211556 812763055 931266329 537342632 96383177 890682275 791031062 13954657 599873476 267562392 631662512 779456774 834534656 15141065 512685723 232667629 235608795 940180551 570659713 16814976 900074217 419052916 477020286 839054780 551257199 781073545 144726178 717838515 371244776 810253585 668942450 421253898 130717316 978031724 260852840 206649468 19016356 124320333 671794030 763235413 882406496 378253628 928981351 722858999 193521921 536597269 466003367 429803353 427863687 574582152 873061237 605594498 324743715 655136919 700295824 945132819 815163070 735286042 217867687 770974907 654188913 904516926 95682784 734269888 412626443 570431746 677487698 491688061 57695631 216468664 887894666 974961886 371904690 537091466 448098570 132104421 92770401 166550515 629209286 213456681 200748089 932235842 982406309 606221650 808249101 173865243 569003014 732589726 843573605 636019701 15567672 456514655 151083513 616505756 830309376 854790779 175025209 354647728 289942551 936259051 422186184 31118373 850603434 236731708 927708668 989342146 738364888 545060625 777929313 36528290 315527992 227668126 879462707 30038965 57153104 312174127 206016743 729825856 691648031 50216351 268008354 347812441 556315796 98981089 977462720 240666476 983726356 550525051 427663439 458229945 939156728 385154054 425512337 336787923 122712076 385036976 159822206 998413090 861696274 400698809 673297983 425722466 997405757 742119673 398608052 658713378 739993526 566452057 730800367 497132358 375086619 628173141 605958839 845711238 446409979 771094913 131904518 476388333 435742555 697144577 806478732 957976666 956733492 29043727 909314345 102934274 860564210 283394680 193128054 527199468 490406390 588124191 750010173 669109363 571751701 279701881 228260861 593014216 488961560 701158928 344146023 225882990 666280250 2097921 99666403 516545212 842355629 322913149 547406348 823763550 367413269 865315659 745066288 1405141 26483979 459909956 802378961 224505074 925854619 12048854 910340134 726623839 716096966 413203331 133452443 945952790 379919617 974101855 331682892 782356711 350239413 699747220 781474446 813203959 587478205 733687265 928195175 998918972 88171498 886423575 29168913 273427458 416455298 754974363 654299259 168962921 98691773 949142760 636993479 678263524 612083015 845552138 496567245 905924795 277651393 76798243 942385047 979435146 582021952 564640233 811493091 115695552 82283213 377339686 859192997 391924769 171948515 490572599 309544834 815604293 582272755 368088718 214087253 247064086 664843235 877873712 129062573 563866454 646659211 654221880 677828941 57814551 907602743 273142866 563267244 736773440 940477736 408184897 434461555 443714831 148291859 326337113 787542273 211743122 425172896 536949765 254518762 605147948 979064300 636296770 653977716 801961751 104746503 45324834 570293016 940445660 322400631 161184075 788604167 175818716 895521204 236970102 551885987 194222027 480890538 640689136 161622017 618564399 868220218 402033180 372019566 669582565 441886136 128013806 148526567 818972573 394950254 160346993 968358815 479791193 405420056 350860355 142474365 239395058 959620199 749015572 231003291 530285715 296799358 499879211 592341704 849724476 384302968 708990176 38108935 136364352 78275296 836315683 836582670 821661127 923055414 952444404 293242568 925876557 656463985 843220456 243967699 26445601 306822264 579340459 359430403 172093671 620527528 125182072 601662685 209344791 146368849 172555171 38364701 313308539 905770553 861399312 630505776 189634485 679227159 316265657 233039291 17698230 985550617 583153707 291050258 58782280 542985311 213961993 765865153 190528902 583997053 478246792 590637319 178434911 169534205 805843186 186531670 335576598 491967451 780722723 74741973 814727364 798657031 46830607 443579614 95984085 696882150 516843578 400163712 88775559 575414226 58885438 119890430 454211182 530257557 127980361 659573069 92539379 711014898 606475420 899075226 191240400 111094044 42823181 511197634 904763797 839621437 670016902 84359641 886131495 326153201 871442051 236638628 415818044 974400456 763814040 600458270 929557215 200420039 505990633 375323383 401792242 696597735 265614256 558231824 907729063 593005205 860568251 171908352 847049735 797181233 301873132 257950098 802612843 142579087 803773623 39189573 805851397 160598137 42769831 899241931 311234904 94475050 741080281 592522378 16496060 44799956 250552447 49524510 890266075 109522971 258974558 583949525 15003447 480804249 734296912 59159089 599375266 4312152 217458115 222749546 650597827 174017883 936991801 560365801 271830936 73715477 334079686 602862542 638820591 141309935 415599253 405695084 168689131 792618183 571401827 850785480 468495237 464821100 713883394 342756637 128920585 96328483 440625624 202168410 939253653 124743973 250076509 255839906 426661533 11625246 945469857 148879819 7091818 232427952 362097859 60244448 828802454 447436526 433908603 945225631 471354513 875470561 73381265 982312700 966189599 757704199 903769187 675342236 589795288 801870799 653623651 581849947 900898983 284062494 253078167 791127751 240970572 70553293 727304984 96280994 267430618 391737896 955767187 180788579 968886073 532856176 587932875 695199158 164630949 116538970 63072789 933519608 113063725 635661455 702833114 732363963 431375669 572354602 557225496 967610952 482464244 747017277 387632866 73702680 630789367 697421644 94216924 697156442 287772060 594346959 947413439 575702641 766785944 530956981 196885211 743482227 842847602 601509852 573978000 450199467 224637701 227513498 986672596 438597911 164788738 962193463 421585072 575772394 744223852 756633712 381770947 910768139 666112794 397963766 720326845 298325909 282542648 109464301 909992933 213309269 711156166 718089069 349503124 918761551 796802583 954499077 480175288 782902074 38634068 429837875 946809426 759513343 628088567 880788205 268870648 489073982 114329680 216879899 975071060 94329032 368413444 177693722 393972130 890485798 17303688 914430010 311972918 793906705 164410794 442284865 414184692 263949816 101956361 8759527 999918294 96792189 126852504 600702296 346807402 923017208 854594335 862192565 641632337 795944690 70732474 35612307 313536962 716535979 981708632 493535354 142527236 498028950 504259133 321108071 761940983 738636760 845766528 357921866 272775308 185589196 263835790 373164425 549786952 171292801 707571365 429353851 406938054 660835386 965274970 964457966 92666162 515969773 426081556 166104994 741759694 832105157 28951438 740652236 121801840 579603105 28934745 734569876 133333762 886375058 743220055 10546839 370591489 240953953 364995905 866251109 307112191 359479814 746876450 641854212 313769506 461110322 897843162 88341611 765734562 697564870 688447645 333764872 661579343 930216282 910874993 892389691 284952328 215102391 573870771 742401753 903053637 73362525 30465171 831901097 546796686 759460094 487693715 509785066 6069761 314458369 173393676 213400780 686941392 967771136 943903144 340051698 934042817 978468426 936714729 131336438 83095212 408018786 452365985 111523813 404753665 714264702 978606968 392080319 497900095 807645960 108647786 947480568 428007806 869072673 904023366 858106 304197350 333497369 629625904 121254817 246723126 304504056 499808799 358846397 272520510 596721913 193699936 19232915 863541860 177926665 494184465 9692765 681196835 278659404 577926311 921930693 274108552 1420185 865136232 147470958 947237300 292966905 713770738 824949099 975342172 298985516 689105330 568050630 534146380 442386211 844662382 114209531 172074719 248684423 255032252 227073402 899777929 931624497 109063560 810803496 582390350 215173808 116084114 157042654 994221896 620321734 835905518 433333737 310845476 992590315 497098626 951288968 724315813 691238857 604443275 733927026 212942112 259828414 179304216 706517581 164476671 543212381 857680781 52409656 529177919 783393773 156213538 347895618 330236657 230296296 405842530 58475504 782397884 531575677 173212077 318763707 781065305 83061263 103110582 843946896 204545302 281196725 851791877 345302862 730900564 957958584 384886133 331045963 480173321 58427415 736010423 989500112 797053247 833833990 345571534 647859096 216532627 106741098 224572305 275615317 49957047 853810783 179080237 747561515 73708016 382102450 535081376 688289331 76831640 636800360 402099007 364550650 812482717 176580405 596345649 348759551 789514752 697424646 861560049 777831992 195796824 530322296 774005712 158728846 229757261 81525342 317248880 393114972 129246237 420819263 424434250 838858228 299294745 938552789 576285737 203628826 559778857 863080591 978826413 466153863 561310276 704730383 203615177 654497383 397530105 791804589 48085062 395929563 558852842 555022579 167306302 98450296 143254347 965223968 457052577 180146886 251461735 541111717 727489715 20021699 429942043 106120362 800585356 334675293 215631449 26984586 379088279 246408187 943552423 660659538 458023443 266281973 864185758 384698438 564220565 409853463 362605163 120294493 837801604 830448163 839058000 69902528 94595228 871581004 778548260 65342287 617654636 915793595 914237391 734792476 187175896 382686221 533119184 555794669 362567063 664785875 49027255 161198014 221253557 287969296 412465578 874593597 736655635 75442367 199860452 892639821 609218274 643636299 943829298 836204419 290726188 733787669 912263540 593934252 229323595 279020786 486907170 491523141 292358768 454912938 638358724 329605633 106196509 670065530 580031097 787244871 497415851 87981715 849696881 447403186 35658181 642397849 54649715 170748815 813701867 909315364 187284312 38261858 467200497 864510018 339977614 761540961 155190141 892928755 807200150 868999415 68929932 616183212 25345925 565153859 326966253 190764757 708680839 291165078 208757956 850256715 954234200 231195897 173026569 956848862 314266825 249515685 762205447 322978516 984682049 945041288 191338205 637266532 803845689 259917255 730378496 506146620 745793727 702681398 807628983 758993916 445692404 854949346 42600094 986987193 923049102 836007560 546958628 182478203 155474519 152495899 977278732 911704255 331337900 697002306 472015344 775683061 432581374 939539671 659232441 913186819 929110356 50815593 674328104 37935552 826768072 988202427 210767185 901951610 906568197 360700995 226502683 881336433 357114320 992348075 537498049 39415641 780213116 478637140 757711187 815772380 496062324 237680590 311417398 493384470 414205365 573289826 229249184 861896471 293289552 970031752 852025885 602487141 256688109 913075057 298067469 968685175 280532035 912533374 159774755 814460219 935432865 434238918 433520871 579625360 874593897 121427348 165118005 654378701 128203151 803867367 613926332 385349177 349306142 954795249 388057985 811463568 268014003 52078745 285804633 598865284 907507712 160191737 624647282 498135098 4709706 270923232 159607242 947859913 324488684 214582864 414870710 349191871 229183954 194188033 825795165 58866331 374013183 953318621 417232699 486340180 273140743 617531266 510774175 85845200 738558101 850230723 639406124 932756334 715299815 70609447 842074204 637563005 778185037 343198057 756947192 146356162 164429997 341502198 19098785 297121526 754508546 34307442 369397323 994146886 685097688 397034803 152772029 971526353 201471698 964907204 97051666 423490862 21380645 25423204 843809338 383610339 285538586 651850628 413523322 648044527 565576592 909379917 675573736 643826497 858446199 77426968 142990064 987865918 991822678 217758707 885557201 525143871 290116293 892910627 827282977 309489936 196143860 228944284 299120709 386711411 761037091 444935819 785643514 827382427 482428200 601621965 219179727 953432754 788672492 163025269 728252072 25439827 261045742 948964170 850774589 590986512 706991550 463113030 292874648 590106605 482525827 756997144 324845723 249408995 127972982 79923107 106027384 447021150 429116261 229644157 930547511 447807424 517523761 408440689 402368051 507720156 574764112 815010813 288414877 519128699 286806091 184666325 909155576 252069850 91152449 593762142 725409435 176015146 270470499 979210548 364236850 447442703 659386742 733386404 744446526 894451234 972588372 240972082 129142672 903124335 908274539 661638165 731938258 736660215 825427516 143917750 152160254 32793135 834787037 781509941 199375076 791773824 776742264 81154788 301266345 334171589 148325834 373493450 965815875 952756432 254902180 720663585 361571326 363759589 840424814 227575511 276316665 760383804 189394591 689546257 49164202 920127363 205046342 987873444 243585878 236727899 694595460 926182299 315539610 693722838 386043408 790631604 40556261 799305216 278463666 572214498 670804475 38812499 911930312 582524108 8496755 43660096 152420804 678471501 191835194 226432941 641953195 568586226 42076943 433707122 511871383 894730111 601920260 864448987 275966263 602198634 284339971 311296297 355825738 829882718 270321991 495825169 703868199 217999802 7615967 524647483 106451257 366623760 376699694 162211268 893975419 230110886 769952366 631244220 26661632 828722168 118066728 475405737 953080685 678239540 555893437 262888195 493486973 102999228 347209953 461027766 326665596 197071016 867668506 26988707 666180045 662012225 372626245 587151390 719294821 622258055 396942610 31344753 800227405 376823725 657830531 758007384 909405219 510402967 388145009 842166660 826942105 111664995 851140359 486674200 831266805 28111325 999323205 797788719 924993936 71213833 479214718 197695060 915715159 578367645 759487450 997301256 573661005 449710212 468485589 948857663 854562311 681689948 642020286 330376675 581568814 66081529 333609785 860836432 61077249 587880160 83580605 411644374 637052880 980517580 411944471 881077563 178843778 374442285 144221414 126045494 322521360 233159588 507986716 455049973 363360520 573319049 199290243 345755288 883769355 724093541 273791542 645383091 966737998 796708472 603471651 431362512 928323869 532937524 88211088 68312811 38671700 886866368 304813459 113157620 249142244 941853558 929675417 302786385 307453012 654222437 458261984 852725081 553359677 127917007 333195260 965059289 285899469 980000428 973484118 939916179 563894085 746229286 882005416 739877563 791783803 251534875 603916418 104823160 63257945 409758110 964171721 770186601 395625052 523254646 88465202 954058013 243182101 63739038 408499147 803407513 835106476 520649923 462010995 435197911 534667096 135867593 646598237 335934785 133691112 75744071 31078289 18908218 234484285 228144902 928969067 217780117 715222221 921241989 78371610 563102748 701714722 480765304 431485986 480548106 72210265 302065989 282170075 688738449 660887460 15057798 164600559 395414102 641106632 479955849 259575776 79327216 288901792 392443859 305893760 20833644 219951768 547048601 187625078 327398348 283025970 967360069 154843328 253566339 935411077 823916535 159261740 652278010 195786169 501642753 368713949 461987087 482944396 830106218 727737292 414649745 540436944 959612268 205374277 195510213 590770154 550380023 286161766 289476324 858548821 428619308 316582051 353723546 730587933 551774690 504686661 933524361 506463333 467861796 714761958 953838532 698501857 317601968 392209142 612914004 908059740 836259962 939536185 782411959 853774388 909414439 444313415 270477660 439142873 11539347 968972811 270015528 93839186 869932363 68298821 383251956 440499127 145529619 16291080 371352588 361621432 804822626 20002364 423749809 309528596 375185121 30599453 639136152 7347235 346949360 870308538 627811946 33707597 932490273 669378679 134141250 144678545 263068091 932668043 222572850 704836863 722358584 974363779 900859582 836736574 79983303 186531261 722443359 576161799 804156875 391388654 499920129 853566887 980484442 91691421 18772101 831656577 262194366 321277093 62481472 117400714 90895864 320199863 602346874 381286604 764002872 443090902 391785456 128036323 815039590 261952729 43032147 997033603 837380509 562384364 731958983 471138288 277700522 640641807 798118245 480775300 535658385 101020821 712684217 326358060 547456008 912399783 689430596 10634475 369675259 584691903 450449659 48566614 984257286 297213997 137343942 878152983 484443646 345349269 459958274 305204587 166223208 739750255 500168704 799056804 472724480 783526278 865886595 787926439 336374580 322442106 815275078 68713582 320506791 35351614 915639924 880621703 276630446 444943770 663098158 10508947 650932182 27987626 736777481 227830216 9568092 749294685 213899917 642329712 566728371 343785975 811576503 124086376 957757442 13896591 693319031 834648994 296855459 359529618 739382323 938456739 890994342 610573886 569450051 972766981 288204620 137137704 705605490 29007350 581691788 400749238 349175939 899271352 548531601 965130662 993916842 225278751 284507705 619197061 706486031 533110294 870301592 439422777 226498383 42437658 678170483 701859960 851942394 869039549 872408006 397323854 705402902 640143908 348542271 114165915 135923354 148838794 38706112 256441747 971033844 273360315 465593568 10689084 339903364 711001241 998229099 71211763 156543007 361467547 373322462 688313832 98514573 726382409 420072428 859900317 208700170 290181569 831770363 498588010 895486153 986355509 237244327 489820668 358481004 272086891 170043455 196838866 980422286 671055164 389854787 217466303 879675961 324549909 196789996 518141803 901686640 745118585 925808548 230313938 258175911 204825980 939641993 387362755 914369605 577387337 76277487 845035618 909921577 701012638 270334939 240053158 93286178 345500491 577396872 829376220 346352246 176170423 939606758 505229090 218680156 261146459 303802902 732013037 284460162 635340612 436202735 764821891 635752327 912950421 411296380 330040706 734078850 27774211 812641916 81023319 55653241 849242967 270621153 979250376 472414443 591315440 841476434 731195499 373766727 62563134 882554280 639702572 291274098 922015304 121929332 323668427 458398277 508685607 896277624 467822939 101638925 575031177 177674282 774835653 908604682 286761263 55639604 454059331 963391216 678930543 569951222 129289701 862933864 851088562 497775619 367611919 437968784 16897271 171067039 674788089 414875511 281245263 113422408 163687726 496211618 217596511 851433514 827322637 802382474 335079393 241877161 895758155 861273372 62360866 230773211 9393008 744381751 936219270 244955147 32467541 817286449 279968512 583345720 456530604 561952595 868184218 335944339 269254008 139482200 205690099 40737029 304447632 737263090 300529596 423044006 284833057 95733573 956666682 769605447 677611561 870993258 18874568 192923625 693779709 800069614 255655249 304965444 911080387 783488848 722685914 92079425 123208697 700042118 783274998 617605760 687270124 630882937 22544976 192659155 11589186 385371268 675284261 595428801 512950897 471130873 766231239 543811844 205930309 887840412 991681563 389003531 483836510 905317414 755265308 635494777 758935471 827953859 999838038 673794980 514411009 566325396 530684523 340460311 803178862 183676206 847170194 429992976 191590374 850647578 434299155 797167619 599628717 216904531 591202508 731439125 645532635 828730827 421738671 233846689 110281947 359218150 696730177 226183351 699592940 934223356 616009245 652952216 561629859 594682588 907060335 73160763 398656871 306024004 987762042 657026252 259228660 602800490 655394322 365208103 924438745 7815542 823506467 974849889 345771770 697167877 942292264 968335680 543848974 210482600 600557748 584176318 770469153 18128995 531971309 399802250 824694548 348469294 418965260 556914822 177193752 291611511 703677406 410686538 74228023 272212382 689932358 299856800 404328651 174637432 966171577 389921286 216733445 580042701 884524224 879902767 208258919 692498394 186435449 352505986 987955786 743750608 862573591 994176921 348771161 892995411 869898590 103700676 416065044 206957563 578049319 61331076 360249935 894275030 356067042 49962256 830950576 40095204 700998671 660829907 504278836 14483098 626185412 361130219 115733418 893336160 777865258 59585964 520996406 602703891 510293760 958791451 976493520 233192836 755335703 235618164 921580227 337114614 40638676 261359013 949505838 860550820 467190705 72712144 556701062 788185913 752356539 377702349 134102802 282775125 160329749 54415781 792367726 364796943 436760692 352645144 363544585 617968750 156257186 607072024 548030118 862592495 673582332 689482316 192766431 504605698 306601972 196402062 530486429 165997965 583344783 442183022 255716257 644290919 716504551 404430764 702709759 137056990 288014506 995483585 791761310 744949298 455582617 79835991 802620857 886050071 500907530 327487180 614860128 171002679 645956199 586049972 706900984 60550318 445671597 654828372 180373431 250718860 99285742 104895272 495191081 657017687 225217487 816953181 307633326 781119366 531058955 17689943 991427321 732771847 443023854 815079469 41694098 151834810 494841306 39574824 709074517 815906035 389608645 714151496 374796529 796113404 101496249 623147711 903466858 196937104 183513427 737937779 579710104 279523938 680534085 624987520 235901606 653607572 79558613 59047092 700753811 722776640 15667291 144380946 912714164 848987123 907700167 961256016 189643312 972250924 825999896 551316568 93190531 479721186 225528294 509540299 531183100 527428091 38182105 547668857 312053822 386573270 914529839 256079338 622667715 130492098 955743034 443174872 220481364 166894724 139411424 764181171 810756498 695290582 209232153 208983836 684231025 951904226 743774069 31912298 964072119 81397963 312941460 208084520 703739522 165302308 532625067 390046356 537657279 673389686 961266438 613732642 217365940 542263999 593345664 318598648 999740022 347003630 61928204 180736367 686809460 147275368 64042800 32564888 48765930 888626310 970852485 176483764 136278383 693070613 41398328 704402619 806140520 585698004 354956172 282681815 234759826 978082297 769709142 774703078 140886396 411200173 919566207 160479995 851876106 558147979 660132742 399348444 719598580 304067109 488479996 299885446 805951044 695563135 254986501 758481317 213906908 752396434 563431901 424563485 323375854 399612106 574648657 158976900 858688642 769996937 133272898 679785125 634705139 785786786 181561382 250817278 984272498 255621598 73254791 138837570 702028162 841972090 312405633 535204825 405846906 119504295 419345480 830052187 688052998 38534921 315925664 646607641 84205734 191536185 863372899 55368340 843267886 757891139 268117503 491676932 301401669 591286569 179671541 629841362 49209574 413766238 536460635 232191774 563864033 582623051 868158043 782267962 274831451 678928333 993456818 161832492 457588298 761573557 403935282 891082800 496693498 26627655 913602880 737817140 642615178 535413947 240658774 723396955 699168624 659577536 148888450 169409147 500080369 577085940 184329446 485393054 965429162 839440749 137590070 494718341 163179274 904136755 948221757 367629856 875886805 899495875 289351000 248936215 814991266 726945934 409476089 88403268 739200862 728038519 584503333 219404343 54767560 654559577 423872503 12656305 183714034 478253951 551301403 488029993 121266630 354427434 758478675 331509322 895990911 368050191 190281974 630630259 559339820 346515926 310225772 621706037 463965744 57383580 330881971 634963417 740537028 270958194 832073949 175417816 335814004 472054491 518324368 751435872 153815710 294651218 844571012 553494486 380849398 336096194 450372617 956622415 386955269 196918540 206988414 15320085 81636517 941578117 858613211 347873832 741873543 649905525 166543400 737247930 760155053 457729432 917750532 847806386 369451760 87095201 449031711 104884522 950671483 33706163 186295743 467388913 698090318 327923686 966596415 581131274 654779068 236760776 985628044 26447659 673712877 640206297 676986791 458467135 600299869 349765901 57778469 174139109 369069915 362276942 637956786 683100142 28008075 145517048 154617481 99348450 360792932 492053851 474214142 321031292 345395123 931394365 549777652 939257386 382610710 607180885 832026727 571629198 97627010 651133393 514619108 564093695 777933758 497850321 329964556 604678921 211962342 929520105 525748757 877354729 762168296 533287331 544113736 401620498 175776778 598137595 64293764 220645290 248430434 604162785 171096250 90835725 835721309 606406075 456878447 804276297 494138169 722785760 859298365 735034017 42487434 835223582 817687889 261358859 594792889 897396788 420487919 122705074 594878848 40148825 49810922 219426676 962191983 368087731 620000300 428834916 38513002 403775969 110201652 858047561 971009577 89761138 452873875 21199390 608933303 375865708 787787886 480249744 124263156 525554118 759439359 716735875 530667283 855485677 60485652 618500749 453410844 986221123 102538639 60430201 261229419 307514523 39288804 806380486 277919791 897081535 130428318 936089126 799368684 204638186 833665754 856105215 664630010 851718735 31219657 874721005 986447619 87706512 986074931 105937214 364685193 685180743 35324655 387083380 51920477 642491264 803805804 293248711 631000617 462020413 574504236 546302113 849697512 420463857 827397955 506462496 438236264 799057670 463434716 335140503 816442575 829704791 732212660 185836301 490788627 394369206 255008669 832573628 541795201 222745959 403472125 242205843 339811895 647299491 410403404 204981941 489539497 476023575 271613850 589634296 147805984 40041058 990072070 198186343 69741366 369842586 246979400 182171329 215418459 170984136 593519656 590676215 314946899 222895207 571149572 996512690 365793718 958246889 964726094 770051274 331575407 619566130 991460620 168255184 912139326 501052443 385193815 439280517 135974966 88457968 345817308 706968673 361082431 602125554 857516638 920310541 180066709 593232343 164056881 436465129 267455815 391811397 540365761 170080391 58285753 151579994 331772937 183571501 578093602 690087719 22049821 619481176 84233487 103258928 805454496 700880180 559082718 648095214 90251598 197619748 353504068 770536013 743298420 388960320 765173448 4096558 51516019 643237586 567134533 510439142 483217985 555407320 455825516 591273405 517527015 695221382 640700479 33822832 88780804 526879169 921730968 250896304 457719112 810576548 526530720 603183521 707817210 441875199 524573528 308921436 687783795 616186323 459688979 413874797 127288481 952153047 806030842 545997141 701451397 499242998 833150343 413933065 51453877 991038927 813454602 789076337 39828442 847917108 472897319 32857322 722260019 992295339 575500118 273382597 467534865 473061616 36614242 427998406 66090841 72752497 860696299 881837733 324652293 355866064 308211172 712257168 918636963 429462117 551129877 278412199 764538324 137159610 431811482 537031807 412874958 940654349 506656866 378762656 8790235 2140369 315433137 968681991 501637592 444808493 790184606 608784293 384258999 618208379 625811862 223131613 855533821 951340490 98424023 110019082 232995141 589534557 878743542 399073271 556309947 745342762 257843033 347066469 438670753 694672220 404089534 676486536 647160525 761890002 603643826 277443978 933619241 883337629 963350555 812058375 466549298 661157766 437483183 458591120 183715194 155567238 81601402 590488104 338655527 246214987 184701020 809878986 684736369 909781945 452857225 933104096 35399207 378464615 204529671 641427661 49214251 995670558 584330291 399864421 91135729 87707742 42486844 518738032 117555460 301556697 495140519 751874346 470564482 27905526 198310089 2812870 322008219 423697999 784599376 846468838 481415957 333846323 753657019 882356517 111789259 456289829 424433117 127333773 525852713 591107163 443916894 382438433 228641202 319461184 457159482 132426837 590299259 514743538 847351104 857756048 98515629 240412868 212561812 784658353 422855686 608286141 776083501 935743879 811977305 293378840 105827416 695905112 263365129 38471874 838631731 218143067 494732434 957348832 575603763 888072766 762246913 37607238 33710494 285738912 677681782 292609024 597678866 570607256 556037801 48522189 67837948 344457772 824895587 280186271 309325858 246235099 52019200 469996060 310084122 874578964 819675124 418433056 734688720 961457852 334583107 398638393 56910596 843649453 838851590 923512874 911265737 879921457 186174445 479135080 15034120 406708363 889704632 62189472 363565819 258788974 162926781 917448239 155506098 538155396 542430566 671724968 856105361 165018344 812107183 113287250 163615184 934960812 955954348 662525095 556208890 785728084 89597953 456338903 199119726 799119193 557677672 383605315 791303649 874409896 530948655 381597698 33523674 226247200 221898167 744425823 344926261 582173464 874756086 353658200 777571745 26641622 703650038 184670753 703315234 400789529 431315028 608343967 997204623 394780303 918135745 35438062 422216469 162092384 424360837 495378908 206978994 491578274 398876919 512539499 848568251 749711586 935371526 995291219 456965462 796811169 719686323 990818429 521573889 148625876 767473044 405505161 438689033 934154596 975861331 811967049 47637012 342665900 648688429 752509764 708014488 100398846 356466292 121376052 966206305 241367326 286506766 829006984 653624079 788081605 697627891 134116067 222022805 380397087 557057970 737671067 831584444 153905742 783869677 898680891 64202654 822213605 40145112 318889729 754423595 532390509 140060350 816648544 833737127 636307427 452780412 803624064 421083690 593853752 461560324 313221561 573083934 262166224 545921500 279021340 736422597 247539460 377826716 957472746 860685745 805585568 777201012 248903450 215702858 670609253 318628259 596851159 139459148 393993864 942900481 385008640 793128774 916906289 849137014 237785255 155985179 263330557 542973056 446835858 485089669 389806717 624762290 781064381 68386701 718364597 905359663 128206550 597008916 109409949 10531891 9972672 434696270 659812259 167609226 93703697 420008002 945410088 53987351 894399123 401972043 851773694 127603535 691968198 154486938 68867824 76050363 16218973 436001201 203125051 442492282 863577789 953490665 308844557 800529596 473250177 309595117 78842637 376896584 93858552 299037245 300467154 64947703 29422501 350314924 120640618 636726070 172726207 215568611 170905557 554621320 414095791 330613212 250348680 923906 697147540 826892391 457024747 993157326 70859970 732489384 107340251 401427368 72293950 125032855 868019497 972750436 903533892 949781886 870597656 150988902 456190658 902957183 528934883 196446248 121131738 616687372 230456885 121281976 888695140 896183405 717014959 301579063 304385641 509025598 120461925 85556059 933622953 609780717 298022497 470095853 785668118 805193536 930956831 28884044 777761879 894731470 834689295 326713321 851135814 347991425 867297815 579395273 671501170 5081626 395808782 28739590 75702942 619217325 842575938 222213198 167310912 10054688 334872307 655898722 438245891 776877233 160679894 477842329 42304581 712195693 959813266 771738202 293551258 200559802 137961798 925137573 922434631 459184078 396518145 640109707 760424135 369040181 293517897 953239730 780483658 865701967 819221397 225881298 655808561 577771215 478743507 376288314 855083412 946237757 83827427 570937931 545768380 161194869 54910489 143602428 154773673 79602470 305433791 343509845 144721804 373550676 287231121 790128628 880438094 993264087 636369983 590570891 999273224 624127450 728869870 111130975 826462345 374171740 555210679 824590283 694329044 224534962 901327911 246767803 768858270 813044995 332255934 621378610 626026708 892937931 829528688 731594948 543973651 626690905 918053415 687705628 540887086 369267536 886885182 754623863 583784620 495520298 836989447 75874344 983360840 483643568 905185863 108152850 83214191 431318915 187918773 701254705 704716741 776838039 353774206 640733457 809226912 718983858 383567812 184368469 392701068 102110706 907116058 748223538 252306629 771171396 414006794 813171185 643248576 425626349 801808527 284741744 936022434 984008709 889617819 232538530 961196231 375020279 911641234 527510026 503949373 795531523 280078029 704804676 846579270 180843965 199073305 149526141 259831002 256158603 735833397 628813046 798649890 749983274 102341719 407149700 342803198 784688937 447302568 283956755 56470400 588702828 362302403 832181279 274086767 261857962 395591226 339938617 756971717 510228464 642743313 485155976 879224370 24359453 7371329 848330821 364593046 843634020 785414710 55531070 510289034 334991565 25353810 442290260 916588248 78944435 380115560 168875261 251833599 892452679 293522497 377043906 566325936 766143756 116279835 929161154 386946899 803958105 303646500 994669613 946074243 576505562 172779523 297277131 839705742 420635151 575265616 966501491 103351030 336671180 694172183 722837396 506750194 44551607 289299546 504695471 785740269 170808526 48526732 644582106 545859078 934180318 643715862 586253887 215107215 67126797 183177429 118552731 51885199 161281360 317030810 999599039 233060672 866387189 988672937 693409811 100561553 689652251 547860795 83150606 182497700 859142709 625138428 484441535 293445457 131436940 564605581 545387335 405222050 39942586 805938947 940782428 332888917 423057455 693880166 870971592 152863325 690965679 161918771 203700200 328529506 178689489 575996635 352335662 842302524 222731650 669054530 605047712 283736955 434550656 989337920 357636950 441667810 500613600 65120291 132941823 349649640 734461321 221406251 51956573 15747638 727280823 437385229 338987460 170481195 652898680 218759793 188673695 432905563 902193714 923511412 53798636 910125067 388710427 553923623 260811707 475351735 633043904 773330702 8476338 386516621 708941183 397805729 848321676 779983856 778797068 453077710 922220949 390048501 629440752 256418933 896696880 910130153 674243333 759234539 480070481 171688393 371142395 860777848 890383108 719327944 108694999 349685209 539164900 192508621 149511535 626221758 265544356 631676402 595109615 100145997 862504586 844540678 646970710 942264989 88645103 290964492 23331322 124104252 247666624 866506938 13587712 876157098 981151488 93420795 271117797 254715356 263587652 863350125 810696696 188771769 961242421 551323620 727715037 20935328 650277650 905284581 743089931 465390561 625500459 327411500 585676879 215205951 888034407 105808422 226561095 821583476 925032127 117528696 292870376 613765037 204649920 795549558 945230073 134989322 857446157 733052588 250560150 947786016 701909723 226648665 724178861 77922422 272250484 715067887 177513604 624041995 863582900 516436629 309275697 495443150 305677967 188911013 401989408 352395045 439515017 917865262 749112210 290846055 963695164 75916403 234316312 912107618 952071382 177282153 723277852 604830677 302039448 794878525 721356888 669263095 884932952 249890252 490189148 527749359 515324416 389923882 124821004 791362905 462110477 417287196 458541600 486416583 172557328 732813469 585279139 769261886 359827760 177191773 527425653 209855669 623672743 427226941 58655945 479057818 566425665 329341140 287159207 302143820 793337824 68186861 892157035 505563297 460296698 525856519 316875332 57102946 235384089 364557268 21236406 272131531 54035290 12559802 589845529 724372748 467063535 589755221 846652439 363713994 571836061 821388275 315699762 280984990 512836159 50604054 512278587 642148501 335438657 281714166 410392796 437464494 399995173 611325948 69970448 984997727 865948161 657855304 388876709 177484305 535836927 882149421 259686849 12489887 198805213 201812143 730623834 351611611 634253931 923634956 915711164 915911177 482534671 342926384 962189319 702231394 176303940 438945343 141754799 292847251 336746774 374024463 396997370 557535803 102759592 411843243 334191750 781698160 46581422 982714321 21180608 577423163 468894451 332854901 541500525 487074071 222175957 832249404 32996645 629175670 447973316 401029890 172534227 207529276 515853766 187802452 45295927 988977986 947903990 267976951 293773924 303867092 562209024 135732063 568525122 245125684 517966759 547686969 464302349 946213141 355970880 761698785 945265364 956155168 412951092 943246316 898185723 178568306 810706562 471224736 828894393 534372892 253619770 454691959 999754907 325412002 331801091 203011744 849814783 487849597 603071894 752320382 342265242 540043417 221200960 508616743 51468531 401247447 810827620 71516134 629844709 355137164 338800375 823670969 763949345 543637248 161908226 154222547 368534441 783648241 251922724 934367771 492026710 398082573 453157134 198737068 95474260 765771643 477376772 759816531 393508513 623602259 344993122 208541972 977277585 101800737 819737621 237967014 49160525 839535974 887733022 802506994 917715791 286382103 353092371 946421144 146536679 752849436 787933598 4942185 214446265 23653586 620253180 817344750 337240637 21416586 104606590 357391072 395691070 731815688 392707595 963492526 33958748 428042244 468045469 482015994 772256906 620452780 543601599 63430684 323669904 138820896 358362134 315217053 7078282 238201589 717525 938512317 28481895 560611251 420755015 26238447 703473258 185281623 605621321 84858200 868454061 918022866 6348 263644755 120867737 389196935 441282136 574133231 168540272 156310737 174616196 844724335 402129603 85578619 573687423 385589193 588824828 287210822 956057994 331870248 771969238 881389158 745923964 961865323 343130591 790488325 945613629 549237411 595510269 306061247 384832331 656634008 411666406 51426341 740358712 499057733 114450854 452582202 985994025 931973208 983484189 361435641 796846681 471827635 511572607 432277453 467623316 48249070 255443154 250243350 447215292 555452626 210508403 416403883 336190024 223120095 710396305 982621011 776532416 763579079 409833137 110048843 990391362 511040497 958851880 601876931 619544832 638116343 173860260 246170209 174117824 944469800 737761444 80081596 679726938 204784903 273253115 622841826 635402814 713061578 335343697 283850706 92326123 482607067 908307874 660248579 414728313 161540699 77503933 576595932 915514128 472252314 300147141 297856313 142107759 482577056 345715636 718753517 333508198 736788136 510132947 66089274 284218716 945349023 65929284 277384282 357651146 273183913 484788600 817921786 872255933 912680605 277573817 363310778 971458392 542240388 217458594 566007982 972083536 719767069 289555873 937042912 210303086 827735132 134224508 553143243 955182353 474566119 80523977 467900129 238970793 497489304 582368372 845912839 825677629 841974526 879062845 813048340 546585062 407055067 538558263 84283989 357938002 440445351 110148427 417265932 673991490 312458252 34489267 437762796 778148363 892077416 484128895 641060511 728132377 413429326 213184531 77904192 47197032 356676869 592656807 553284833 8389641 127034375 62953926 388008711 819323555 134680707 887253711 575264041 117538799 949185244 457791863 76076340 85046843 418601257 522424133 114018826 430049768 529011123 169766165 699906046 668955117 925230969 181865878 523394905 45118033 635125423 384269772 272361177 616484532 702161722 969553294 184501805 852521671 637170998 357461001 844047482 394389711 758630256 709030459 397984473 211363878 618237421 235776377 996884182 908019642 198083169 243059689 122664690 204278413 603221689 45617929 783951139 364656179 471728018 396649510 115114831 272318295 310412479 12916966 396780500 324059702 485928902 267022783 368782851 301909794 58368100 64288893 832759968 917896448 113691397 339630272 808877668 84190154 894324556 428740731 236693115 562003727 365865105 210374775 179291399 332858478 175176286 495382733 965631899 678875166 620440306 360430448 682765248 547591529 996878270 829185697 261022067 426216237 942902250 645711737 593492389 828081754 943433425 240263778 374812858 371068022 186199680 1603486 456704267 991407644 573640251 968392639 108886884 346977144 325675257 51232813 641572742 692597965 625627107 571493284 338188966 4062447 399952601 144388787 656498156 170728393 481484013 483738685 350648565 341908697 308270309 141188092 717730386 200795055 302284733 874458361 684853767 733899890 863258403 752284181 574846477 367853658 968138234 735221380 960540368 790780983 850091223 471051853 146409393 592243945 840685191 644629195 814275973 950493669 259041415 52643631 256148244 819924407 512804746 211388667 172686747 641631354 488445431 490377864 849759562 914303586 875990121 259232129 201903047 712895026 620334125 478112614 283043498 67633094 390254023 227316746 192334335 518247051 236126573 183422998 704748743 71734786 622800266 222346116 563538294 274829377 135850301 958991396 622890102 697456241 531144407 560922650 665272483 212266321 445474401 886586462 954185166 478325169 505705492 188665658 951751482 299475192 30489310 948322512 911721506 402981279 734030052 141203346 42248753 475545012 197482490 844866760 62752264 424117080 90577453 607417613 75390395 956292417 437305914 365865170 579993940 705484089 365512212 633520346 524717391 503272093 682103138 256670908 974641437 411029214 852931582 770411365 601452961 517299204 650541687 605293459 558026166 590179622 707046544 742679643 219512998 183149299 829721023 893454243 392575156 979291180 369661358 871345321 360373140 119202343 768136894 980926074 360442606 948453710 888422527 938220668 869450974 835249566 7632953 300484325 944427639 864754473 476496743 213443393 532780091 891802260 297088055 271437552 459860644 328645017 523632139 582332325 540062367 325062534 658285050 454943720 74143244 265570749 267938127 663950229 40044607 649379378 677081097 630179419 938039938 966757360 163606874 209730622 482734225 105904020 372179497 227821590 900705564 437621200 994511760 410331150 441462344 986899946 362311006 299909157 968008751 155848250 181983893 890476208 669561179 417873071 593127405 290474710 568814415 624103243 686515280 100404499 935808254 166386850 593506140 575750069 13843794 869740640 936007652 244309858 35791270 360439744 57657455 158221200 14717516 340362773 970939320 454122764 554359561 364427077 374425900 172418676 289568148 336433736 501165935 153469629 539207194 988406702 111410903 38342061 983628733 385492502 139155439 281880673 305534224 739970232 750473206 583879625 917627037 20099036 77470045 62254887 550175071 30217057 646719565 172460180 790406984 277846839 127256863 376386939 880393148 971717605 3457249 413720860 244940308 453359364 918255064 903656714 303887901 714608065 688480248 856178606 264038038 738516319 24057198 877072066 447450550 492904371 730874135 71251414 489756579 761957286 659138822 809173710 297311995 334709175 44416258 163091553 495629135 340521590 94345989 314902172 437376419 749723914 192038334 190047582 261041904 406089132 646462736 345390810 222277283 801756202 98672785 827535383 521934619 36910181 167389708 152942451 644809774 511477459 89502719 515269404 972110244 109165822 416732190 378243478 635668923 384591874 611940814 870876216 645194658 776864019 733228203 789799854 442074622 770818549 236502786 764710008 463932263 671501698 837156951 514371946 185344748 903693864 232254945 130734122 955120779 918750312 776005385 520982454 172314042 779456856 840445935 103839451 865854945 538770210 60666341 510936254 549053149 488184195 62646769 314710871 681858431 258740301 853815631 667283441 132995083 373583333 671537645 693997484 887157946 952888773 100735214 640335355 431645752 949778683 462510376 188137767 204844582 802763433 291004838 218765001 564368793 882477699 163508262 20005972 81179545 804949844 169470363 445502857 789290915 205717369 276724908 663253760 209585192 78982500 483813428 980517030 39394060 123754522 118066112 479837241 703579175 139871158 211885588 40041422 266244039 524998628 114988454 140514380 464795437 257487974 889713953 320494063 636570891 87851923 542408676 369243845 460322828 226905811 263689345 986953524 45132108 370465060 921835326 239724146 95147740 376966040 123178135 784271628 250283584 319294421 461361594 640051040 98964208 468384915 923920649 644770338 299659482 802364450 186799260 933042907 498483422 457800929 944246460 108529765 704254289 133309896 645048937 477032816 18303611 8381151 402825685 405319937 419679001 316856260 142142183 989487854 135558875 366931498 78410170 704947299 852763367 897109588 358774043 260979807 159140436 110314910 78078734 244631608 463263920 48667381 779710793 848422931 289348731 944562521 794347447 769387885 883882410 436970594 737095926 510637973 980568101 144103096 46234330 425801775 354031688 707560602 154844904 893415858 409447782 732887128 976715483 784675307 626156097 487386841 214761251 82803320 138591124 32488470 564588385 189902670 122586761 251360157 359670509 322014004 132568899 185697039 579870032 259683397 91941718 712239266 277826762 969222770 412078154 296099231 729898189 112852990 564490267 822472421 249243264 591238144 715802044 175998820 764660541 122337508 550248335 540850851 776599827 801499370 807379950 823417660 340972356 855877798 526877094 438420314 110955720 386073470 189652087 949872961 964798153 242870320 425280917 130463174 357812005 958828873 187174954 804693715 660975855 943794094 617006033 273710565 932532974 360736023 184160029 926097038 903265821 387437199 169194512 602752243 974736425 395791094 329264292 820146766 603726326 909153151 154111814 696601965 728390171 705435186 90344789 719346993 603959649 679799915 491123112 367601937 90790727 112136537 493025029 628088212 980611713 369311360 508545195 821272282 794190709 4430903 398803657 13681428 711336125 795868715 960558852 455188232 105420711 427599834 254906613 700898446 975947960 771856665 219303593 266240789 763962916 315208335 113311007 53100062 361467480 785042488 742215885 816591296 545772145 804698594 118552092 901116195 208121538 676454835 892345831 992516869 517089618 279512225 353626112 630178360 665108059 374010104 448553900 551377954 208270541 874574040 163766306 392269115 314139336 388995765 149670159 998190994 447664678 7775701 46855956 843913033 189004527 153153237 861070407 893716756 542950882 278670885 869011118 433126079 9384179 918532743 123573959 917401509 431854023 94556564 936681987 841643321 892829754 979681847 768014662 2214785 280537305 770698544 227663721 391008661 71805288 272077714 68841400 335038501 608978270 979495237 499766389 576948721 568435812 439608709 481076051 811404878 728020186 245010785 529207803 991350184 220417618 514774589 204676234 13355002 287234579 919873616 220692497 53572439 622645143 495443239 998176532 426632293 934575373 32798240 798445068 642596061 54422488 550880496 296129509 757493773 879160589 963401246 947928704 272278358 174960121 502135685 705419570 763473581 746520218 911691478 223845700 915392286 75544097 623429651 631584881 746085700 194946422 763685909 536023915 928574931 678679987 890221320 651334229 962257423 456339112 512719082 885068106 156480082 454931798 868836367 410126549 460093578 500647540 240782239 9017975 292727992 18729710 241934871 172875045 944070002 838176864 810071492 669687751 309599329 881771935 862553419 273680314 863719620 670910768 17528356 411998543 651733484 72644047 67931930 81047626 981096382 644227818 108254925 302581859 455007540 863004452 762908720 124901320 508651740 415744210 678365963 380043162 917009751 510535809 264148089 496888939 473217499 136892270 414549867 251480262 642485938 711253004 527337764 29582759 266681273 198647426 762659260 810160383 474362594 471297322 607915165 131975218 315321010 656081172 254013705 843700888 49465027 949214849 504748689 976670207 865155139 30840680 275604895 776398631 577215604 927015412 315041774 706171461 769466666 489254659 608578316 139434369 453725520 971110569 936983263 713140087 324678499 545901739 164724253 115294138 353283061 132727557 700034770 32573260 347756075 769077349 909714654 887558440 288528448 586392237 376018036 646210745 610604544 439782260 336541341 444280928 206890318 145218182 957537203 594909681 896051870 905778272 198875110 529956150 19852155 50707637 320910778 288609899 108446979 748646635 731346567 468725952 954353766 722123422 259027704 854515931 218083690 70960157 434006413 111507283 764395754 638347496 733716761 980282678 19618642 818690104 947183940 25312388 784036645 874604407 557658378 222104753 618993015 587902147 576369466 692331815 200450676 871892848 705860343 750622145 118306775 502137475 781218875 624662354 567131507 895226167 234404943 925420060 582212014 165710204 463691349 670225497 235664385 109844595 245723070 983810230 438599545 168469747 661992148 609184467 793667385 205717511 719321905 541689284 922577142 645577582 245478470 425478291 908926329 150304282 753282006 941764283 881670433 425705650 161467000 272946862 828498526 808591375 666055192 819454033 264696375 654157762 62929014 927099259 13882053 526768269 606926757 796114041 149722550 724694758 226512014 677228173 70915787 587884919 463323499 582796394 757429850 48951712 460950604 499630778 593818572 661192180 439452053 580780696 4299296 357409975 931874942 474789399 352899175 371922023 163470738 33397433 182914118 89432112 156243760 357943288 577281143 930327158 998940173 958478784 665192264 851364687 74334640 106236659 18328346 927154950 905261813 984360932 297180899 439345818 341052043 402035420 83484845 891206204 454178678 889744537 445111829 624855509 187689869 307603658 894652620 384416125 831190013 868177044 279389977 903791109 893748676 258282768 830799958 387382638 245804087 25508810 375211887 449282416 304029052 601047876 485126502 113262068 949144337 270904689 834772433 628696986 339604035 344470586 389495130 178575924 780883128 239305212 975999038 974968649 707695846 354076168 513897167 477069459 562129049 265213730 29880306 588241537 538520433 781753859 465520034 520359606 299924833 876997591 67297643 385519752 241490737 188266688 332806383 760219010 962298621 975565905 425089125 203553762 519456437 908904467 840257813 974414620 640050843 514031619 491896797 739374677 863497159 161996562 899190191 123380968 575553190 326713764 757144081 289137381 488035191 961934866 704067995 401414541 977170637 280462632 955693692 536918487 936900112 205643431 115836662 385594095 831729148 532932548 232002014 544543409 894363935 855565223 548776733 509569586 349216863 233115117 306682417 138974264 202201971 679099687 997744812 972138941 828519269 808227673 713898676 497900656 869588758 171356284 324415362 882895155 607614906 401578748 93119971 764301470 575821656 473715258 166396602 751582075 370287435 36308235 204137340 807294280 383391427 31933495 736690354 874550456 285998917 21154043 606964859 544837170 584395559 437510535 398900999 463124048 398078997 294266241 925654301 333070434 238145423 282530945 825889942 736767721 815821672 432990355 67562207 910784540 903859785 945915576 140393851 891525734 893054508 39548261 948590207 654467301 745737441 721926402 767862549 800858605 899332236 243476075 347572729 977710979 63297573 969004403 198458367 439799779 535376374 574254941 269769867 314376699 627012641 512928609 917267991 474976237 946530584 274069805 177798321 261368209 325602339 735610209 112746618 578135280 348125661 725897234 990602792 422572746 686388919 615761224 51812228 113323281 631832436 346761599 387163629 593085804 367410603 868328490 657532628 634854325 105709641 683469867 407159358 586043515 803992076 400999005 517979461 478325633 595164169 319129611 115125399 526186557 928867878 470620533 566605557 950488666 342841249 148510290 213111733 650031670 61811079 986801737 336120129 163743077 955131197 504910198 757626262 212335404 404876027 99389164 982535366 677893383 97883213 950886189 47242102 424515363 498910864 259775668 662290785 947002084 783734651 113967211 965042131 319680865 491145619 860486197 865562670 979238371 735232181 700283237 986265193 867065962 984095888 308596037 12392332 904789032 28904232 769250705 819271733 806275587 659644245 978739449 162393366 856367383 809972546 253121954 449114484 596440370 473878254 368919462 973840298 185224535 394947758 817477519 507530148 89621564 806341545 116378336 997613924 767012043 259842139 14217356 631071105 500686500 186939154 275954557 356833699 668321434 405088372 789722894 861354248 151947570 987785207 271152018 545445634 643289895 343613032 977933515 232132983 978482153 475431525 549445747 960304480 66384409 470120163 983839927 14766410 175672334 517374376 782584502 926244824 653261907 813661649 902060806 344944190 13777446 370529358 791383088 906120392 283594747 291907169 919898415 570924369 775949816 938343459 388239861 15931852 502466678 749094655 503217639 421831359 423278214 751009333 593495644 758799811 846760553 841847128 73838881 930724870 108694551 752952017 482134264 395264200 605662650 328096858 811469332 274870753 773933104 766975875 907213982 853741626 67075980 678697520 632651060 729753167 146929044 232974104 969409892 864350388 16692805 415096904 670607414 519319693 470249035 845329311 645018271 630000148 131721610 622333263 482310159 148863254 453290904 359688802 92959460 769789302 459640896 543915827 968617716 863565225 39786496 355036657 621625864 586159417 349208715 584872223 960815195 352066883 382690633 438117399 245289759 721700088 857787858 519294850 433799416 49151519 901526135 961093089 810030207 808092562 114569401 196417544 439944896 877619132 774484943 24262557 478456764 745563426 244383013 628920221 729919208 651768535 273050328 866356952 840356780 483190533 969813050 204328560 893274086 276917099 93495380 600403038 363497060 398205914 745467999 386461677 192950637 527800503 806474314 227187773 942225209 415504253 37159736 944000193 279350900 202519864 608300543 985506242 943552191 806101770 743558057 647380185 491428143 489724585 545455094 888998777 397782220 204388063 209777113 293609827 219658515 431557641 989134839 62542639 11769461 807016601 851547435 200903370 718390998 65754517 514546437 878015474 887470095 182697237 613752902 354191036 282629740 56232648 617967461 941431823 385873198 220951152 324781837 227414054 78216969 964677217 891460253 199392018 544410792 174874118 381973158 898716982 971624229 242439260 2132337 263540169 129698449 979786869 363808119 414269272 778481266 897307127 209070054 506631745 104608319 822668699 866435875 202103608 628369894 296181166 1679682 41226182 771395143 467571859 775725200 526966981 579511 752432958 204204554 581440741 552758910 416466874 136863203 536287531 508290905 529191333 584787970 970675053 931380728 548677295 571133057 901190871 894000513 587649311 499744815 720417896 831009035 290972237 670096143 423150453 328095780 739985705 861808855 477725734 424812364 401047731 369799538 494137844 487569528 794192512 227859839 657411634 493788560 959085372 684019919 880624257 686653169 156356898 177054954 923944281 816603115 297644166 241481611 824472199 297122627 231542348 51492128 952521641 257153971 670318702 256725323 739685556 97945702 527502969 638888803 943704687 916756348 29681168 910754036 489369845 728140940 543559528 604830779 156888631 548433693 84954571 518341802 860521080 402274091 391666709 299614570 493173967 339266985 719754554 786856916 204693928 649652473 940313790 162090487 798461251 112796021 130492219 515133718 554881588 40823786 505460447 885756455 614833121 228524568 784738283 73746516 286074119 405749043 4173109 83241854 874190902 240179813 667707559 15488181 955808336 299922762 547230141 20246209 363131662 138155122 202712587 497563293 924602747 876360162 952545717 941176822 868236407 685777811 182346230 787208624 730621749 913080306 376488345 195067489 766252477 658880606 327676291 985648340 751566187 473073070 975210279 772626056 606208878 979799208 69789968 438885935 744914250 179587723 309189467 373501999 154486614 950545286 776587834 790639396 29974335 175171902 209055346 612496476 830977667 294598476 843814877 730450009 915543287 851852733 697789417 265391955 924858690 58691984 387228696 846019508 263780191 782133564 244786814 887119514 889282847 363320615 26307654 814181464 105006757 850832432 403011629 265762037 379788520 758110246 464147717 159692459 698738740 964096078 653996596 753775721 498759849 420824033 183738418 94646866 162642107 661328011 24145679 182443068 290945456 368335086 238526698 275711026 821852709 694208797 900849787 746853107 363054730 518200609 389675402 262847088 745379233 839801207 942724469 550233681 554327299 115080592 504041391 344384625 676523419 761252944 755613755 653198686 510894120 747487888 686438453 735662298 738177984 434642333 613127241 665661021 606064200 632680886 615499578 609734032 922610428 750622353 498352221 335252691 837577966 399786966 170739227 644930488 613687678 783801251 922364530 673190789 526025959 424305926 366381941 543602103 640780978 22727814 126411208 98544250 702164545 516559515 57371940 125762353 373515590 236033073 707298009 715205364 834370632 787390762 132756551 846340877 881768229 370644185 871208292 610461050 241078667 947076743 254805305 128882543 432349053 713180145 144603749 491663313 583287764 750798280 534232472 530714555 946362555 127154736 490123801 585426173 32379443 26231105 377092161 638267544 794125453 677549449 104744446 716327235 855753458 224053897 485422929 67042793 499802590 584036659 310012112 98789417 732254625 410812019 77885989 118729941 850481373 209686435 697134220 441827443 693891851 347571476 900633945 621484991 675096310 933665420 385352304 310400039 225474365 314985923 836106443 77463629 106992341 855501541 165895928 723610761 500894086 462891283 44865944 343514469 927895145 859116769 671972834 109735967 294323312 763535065 857348125 723867946 956201182 629601271 636035625 671244461 726432203 513486380 885728759 535032066 140620449 606185692 912881676 709434680 642711202 687504735 399824899 477872530 14179679 143191427 774536968 504474118 785509186 506391560 338435165 946997439 10219013 243861283 670718936 29332124 201034041 367840508 663161443 662132142 717505729 862577712 587802236 90646462 916396884 165166671 511707826 466293956 888253694 776382047 145855534 680596337 397236639 374633303 437976871 409992102 395170154 936948901 689302893 927964923 206351720 791919273 740704479 523058489 653338611 729676599 750011893 706611424 565526843 55311897 463539767 817575842 390016452 262817675 827712707 173550310 347310310 699982013 551566539 791222342 830433100 408628309 520368661 218036241 558399862 809510634 345257849 619279818 595745335 998126986 129890663 574095015 38718263 761371189 33046622 104554515 413755249 53234783 33394038 211248172 402304438 95766386 146481367 380650565 587578665 960188234 346149440 976410981 615376322 451359415 999054209 285976775 30564043 712286718 290830593 615092824 453711718 45908824 399435832 611796797 379721476 573810 533482038 467311178 647513071 443502060 579368475 63726219 958304193 729124826 379277724 269734335 425869291 987249222 669964165 335187160 910544431 264728747 792288305 78321788 906580263 58235260 951082516 340093831 879128252 466448027 691868210 486637447 176280239 570956258 652864677 427871550 308826387 626481566 920415002 575869732 406322384 773802766 106224980 780487651 61146658 507013353 64245672 387894489 17179417 137842645 598992768 648284313 125445143 812961009 80644569 302300522 706521173 79766604 378667460 347131846 482531421 738167659 741996264 113500893 160029841 563190215 605583358 943320848 633564067 864080204 596379988 369337974 27173147 55702748 123813707 686404442 813501397 99671754 463338713 182508730 297670784 396844384 295576584 323123402 944523808 798552409 644792949 414249327 177619084 700420711 694788562 227870405 58863344 246988718 856255588 570260378 466597453 745062983 811518853 662695408 393187316 883834302 128495139 694895487 824282639 260866197 845287743 700393520 631180824 269854399 543830128 48573091 490715488 823054885 950195294 527098538 229508490 442213157 143948615 958719948 727622925 988847885 959497084 794728899 371934645 406765221 950876133 473706238 687151394 520758434 507283577 590853408 222209351 375919668 5945031 888618879 105575660 906485113 913261681 274207654 274796589 393519623 380707243 56756179 10707194 403356518 927545280 966712185 695829397 78641555 506072973 368558015 328071958 232688511 317614085 386164224 227071978 982139790 174025899 100084810 488103504 158929433 917385755 865918943 389505243 501735404 242141825 851234230 49582323 524900552 304061472 202936570 161919827 631060962 429906380 384438154 844101260 532058722 308105584 805090936 327893889 325428710 29457034 405665930 768254441 79335164 650055338 50601148 544797393 679631275 901401078 690361020 378247959 145647595 278029225 320825197 290274288 310327336 670487696 245880165 317494627 235384259 774326155 975115630 296289483 316684177 453240850 757912840 503820120 585759322 433335469 350543078 671731855 9716571 926889851 55513965 887190726 283817669 915125932 195893048 917494697 388021819 447393031 860922262 854952120 246904664 28732005 486555402 610783686 196368935 65674292 8026570 726094203 604243369 314522101 124340802 166894547 913618003 997731261 845769102 805295774 230352013 692499640 855963651 460884990 693828404 246753698 397550502 482916587 565142040 85155660 697937075 622217650 65918079 45615389 248997400 655788658 191793568 274811278 488436215 408759198 985466153 265601197 892431912 63778942 476305338 247237787 697488052 556059053 333582184 450694670 183460955 215877532 877776955 267316944 1296655 804498190 95457968 81555006 675682423 50935194 869682231 429047753 150613613 982424109 847458229 883658104 270161280 724238213 570203652 784069733 90048883 839443639 192687215 201678139 505212860 718301609 15510839 703911615 367713286 187858840 787444240 727563844 247620783 886058900 17129124 124880949 613105995 397118207 337914639 234722447 142459167 716714002 96470625 647478115 19590566 356683352 163082015 755508569 100897552 847286065 190289347 930142248 62852798 990728273 247953719 326254879 938786247 917924926 846429022 388376480 127730039 662736085 729886092 413454751 126332363 483378629 326733576 812016679 747516405 977651474 987360657 648789973 225069278 254928276 101773782 560371547 1335711 444057973 31132157 235504638 287866375 460837559 15948317 683157017 841738521 833382316 798872259 977673624 789762954 250087292 118951281 170191998 46970951 479830178 879385882 500693855 697998061 648776047 759994536 886886374 518857295 844674182 570910071 972159825 460521716 792380766 833829335 773289712 267918231 329163460 189168525 5043369 680759205 747088214 666501714 238532983 824742338 382784008 471833171 622691814 829153860 892013731 740803759 671332505 820260278 212332609 913106429 344491205 620680023 756064211 672533699 389759155 663465369 138533531 739508224 587764290 349486754 120706226 906887075 794554722 350565582 551328643 639866641 462825626 130438443 535455310 311376803 608119682 471803387 792868006 989835045 876859210 343850806 858515188 227107929 754965298 715388677 204105457 291944818 966301456 632090696 412587056 268396697 584647117 58298129 63196818 202121324 844191208 343310631 16339151 331905658 400644593 489019012 720007924 87843272 105791759 782149591 983857375 375882575 768132987 686437635 27956933 628072059 172069123 239492510 844241325 896741805 942813576 436334963 79786483 445320378 469270400 964062465 883942342 106511723 9465460 278711289 953219497 212203003 270240131 12405699 46749430 580493212 319150558 460863482 260354646 444884722 4686154 344013548 875535434 736884886 915544737 383306267 62150054 661989780 126129745 94509758 629641744 283215341 543577307 940679744 618264197 247030038 762205525 111349440 720281045 637893239 762414057 858256272 600148258 922493422 444803156 313169335 110949477 14611529 639361640 570525807 216034025 342087631 59350666 570652071 860760014 132108472 561791540 290499201 885905031 82575792 720415860 423278549 274538332 46608472 845237867 843053741 740632041 673366469 704156112 627542727 794178461 936271615 707905899 510820118 974813756 860941700 577184666 480988737 495508062 191257026 454551759 79083299 102363118 875827616 710510607 944758089 637047979 661323510 868111220 797007735 635517610 15795728 525722285 816643620 474378450 276879919 523383161 67745273 709375838 545320968 637970479 477781589 929327199 84934723 927754810 841158604 902927928 256885245 392045205 166998691 135153184 597676358 578075731 62213462 447295139 673683364 928720665 123063571 22431778 351415951 879337890 484141628 109803854 371606514 904016442 524139753 847198129 368147632 503280964 707403108 892156965 316862749 301667253 405021355 21874010 818485633 591466390 181071601 378817621 15909529 304793733 413045789 939652331 980148246 725882932 235892297 69687882 945916699 261788393 496786500 995590001 330974403 180431869 794638865 769418675 57297048 378009693 353774950 936162105 311453469 663790348 259553326 434329980 435696198 595201439 32966407 179213262 44364283 298352831 399971269 499837906 5357209 566234795 860748781 57427968 914392944 846648755 949024059 617275427 416716614 153951422 101891100 682638298 136544466 979025349 327861301 303246106 879292226 560537174 460347098 841202346 773013686 254105618 350622103 924816037 512985794 677730094 46443691 207087356 979023600 407597302 712437640 585173490 970442044 252066374 552618837 678780574 149417110 429930511 109174636 557500780 250037091 513326552 556461532 873602716 17376765 136753722 903906792 278523586 199697710 52305251 880350853 581915460 323718841 252992404 913706720 982142175 558471121 339376035 146098902 742354979 175032736 719637882 996761979 31305202 254811586 404514454 262243220 980435973 423182535 671492745 485231644 956227943 481903796 875318648 119198915 374086904 970814850 663372957 454764650 611716075 673297822 386334406 989175720 492979784 695747176 475501268 261792584 495186283 985385652 552860733 847324361 271280259 971802444 176514443 838723805 570010388 700710763 45931739 358670314 281594229 296350531 685946975 793425036 599622995 744675448 590749404 112175633 511201324 643003044 211495981 202019579 733259733 184004561 521666494 747070850 853400309 428155138 695982353 674083343 334858631 485214378 501479997 829957570 585888092 388008242 369408618 531066094 852962967 34794360 839570518 496950679 269268527 512696139 207784659 664349691 641817712 345637360 513810758 335170822 111316346 417613984 526408234 814354652 573942721 32591111 482296203 240696147 266862731 553138119 426693004 281817206 900358261 98002675 719165153 272916739 328923119 702476948 87741269 189574894 911310267 39157032 994108486 933257692 60943218 492696093 797991716 184240553 156438015 481162331 85639670 952717026 829134881 403922103 246315476 960056652 914655981 337433217 130782574 409061467 84883019 231076855 69432195 8310204 909801332 102176975 354680171 583219659 773792122 631033009 551327118 155088413 789981120 755770299 529419243 230491640 172603006 940089596 965691026 612217046 30414142 129409785 437474858 43115750 276694882 493898794 815564396 257536395 888280732 702217086 421215909 146392539 672682355 472949459 704692280 8555809 466503109 284304767 181521690 261807963 534329151 37546186 666011221 958327228 91615719 428822641 135908997 567375147 622061203 273707813 770646622 141210307 325095791 535353098 478131492 786476625 508210299 895031352 676261169 76105945 707872267 97542462 250269810 831012626 608165701 444259226 484033770 421867493 120472742 184753730 151058223 130616049 981986942 736863774 425148648 821938442 351170415 223775883 425224021 869185718 68439282 350639065 202834887 391036591 129392082 448154062 788668963 742866532 972217006 429045794 866942819 994474103 465021051 292409089 593563669 814172992 681449216 638182284 866960090 579775816 389062489 831744088 254193384 700345295 732937333 994356717 389411977 871472456 569303448 673161544 839295386 532941783 13404890 691962969 586384909 278397402 336977317 821323398 853583463 370580061 737597754 938196262 332306498 150788004 847492397 471597575 85848268 334899109 299934181 904110057 365499207 43094155 283642141 151813889 842802567 716601141 186386022 933849463 749001847 690766772 833126307 28367336 436754068 872684496 356742027 121562596 444530288 54698372 323461674 865088113 555954480 999664510 315566944 214592646 493261071 808695200 547104096 631891857 449322969 336927106 452570419 601214962 935959408 742032109 425320755 354677117 812589643 897062497 757375888 598480892 719101426 133401488 218984654 293861803 261749123 248703969 612652101 776725434 777019952 97102574 348795552 790853839 363448255 305001222 545539167 271809921 666616585 890267052 683905109 440200414 213020283 944864789 44133930 766191846 107350168 106652078 561076953 538621197 303843956 448999061 498567475 527959229 365865531 328818715 543370843 633207762 380140968 518846280 945298505 296219932 436057742 345870679 680656967 869597408 749036371 944193077 902494582 823480152 824661872 522478854 117649738 218207022 925102578 621284513 15258634 717559301 208331772 841219087 489954641 64820976 279299395 155634959 624997008 99327225 132036240 444070037 610380169 75180956 857836098 592868167 469460693 472664393 119290057 340673535 854644320 956677093 416782124 101442124 376822248 715189065 145015172 400808176 901483393 921615298 408841599 396737635 251585555 383688335 621278430 816929615 789807578 147673191 196271607 758986002 88542438 618836464 369471027 607976511 6925209 618790985 298043025 202812189 886557484 128447873 299528738 742285350 649426985 523111709 982262411 405341321 872682738 418131094 320353414 834652329 25189433 990119385 669403745 772550300 684212614 695602117 763968637 579913901 737469877 419523760 951786960 860328923 423874933 558158563 722546787 314644056 442076618 843883801 749698005 108167178 345728651 594255108 608222167 878996749 951935716 442219464 123038894 397436974 722975190 146456702 998302645 52180850 892975794 201006259 634322904 206022285 693262242 946637030 588907545 578714988 670624288 295943949 747258382 274418860 623917437 422088464 551615073 842041888 356383067 547351373 277859663 915951438 849042995 355410195 845012266 248726003 670754769 296282407 974656727 555461755 756581331 310257218 345464401 679919241 706364461 773423504 135600932 552562037 543081383 649534770 819314418 777732297 858264669 585646781 912490994 459022020 749574718 628029881 992819052 935422167 430537103 232610852 184290366 715520554 143325029 764497644 311497562 285971480 663070766 786258552 206687813 955942062 994708009 302680864 323387290 832468272 447559657 693805488 960210821 91999381 566157014 26264554 408662089 249576966 842982315 465279744 995416251 349107555 354456313 314952734 769019588 616381886 320337315 461391070 896919010 989647837 89211744 698250193 946432423 387580092 778225981 454536957 732391481 923516937 417138712 599204442 357147345 32898215 722110758 753863764 192554556 519984939 18925677 674701900 572694365 829185634 250557259 599441687 766585769 677307337 211210989 812194173 525884841 5481491 530230489 998536379 125032315 338204071 529765733 754663170 983077202 215407392 17876029 44941814 325871602 123192779 608868065 863817519 800845620 91853868 697091364 105590459 549389448 643184249 669729198 398607258 477655406 815248669 902667387 275762753 922940924 686984503 636214619 38969624 938402651 171976984 138616944 133048060 724636746 159660745 122937010 985197501 210039706 92368515 645820526 300802721 970492592 309697332 311220163 597558495 301564422 663072513 19077412 791273509 97087401 488168894 810392537 555236627 382267324 904228216 936510077 689727422 838009588 548209388 889304961 283204142 101197083 236342797 305629096 33502432 457760142 975248513 400589449 482377540 793431487 973979685 178835729 818489920 217220531 469442437 83546110 216079019 360381060 722080357 702618212 336157651 797175520 429889595 573313068 469229560 412437896 927937713 112443536 209915598 745650130 410984488 799462049 625144319 799846952 59716656 709494721 618356647 253703303 835075089 641632809 990870742 363865345 371078982 614615908 35897874 727971387 379464701 30311634 628271058 950621168 457347992 16582182 729195268 909046124 200532270 778232297 914899847 116316177 786053642 704031221 912603826 155497941 450937899 910245882 722214860 406783938 331359427 82935292 127387281 842699381 221674169 535159507 351367603 986848416 260496679 343659177 527678295 88319369 370955228 996376960 136974740 688389000 469082586 605217706 397153016 919336589 234011609 955864143 861242114 860567191 155075267 189522410 482130089 321132606 737541174 624615116 482408659 647029546 448513285 590783384 220686047 377522841 312405431 274116037 75510044 110580701 821881606 177757728 786741071 161319132 262114402 424245575 864849713 12135567 795063404 722805806 628566767 14548355 18615163 227805342 169355688 45271131 555516442 198248881 439983603 575690315 409963912 369946712 988342358 59926943 404410422 591439317 581730768 501315122 256917581 528470081 570119248 987083767 85036582 546306823 624928571 4768116 761324239 24799591 63642090 663219266 539081357 259204852 823233577 452124558 477648212 610067990 75622586 383593627 674900817 76463241 836680656 699995966 849915745 189071324 356540820 574464609 586171799 427566580 420421284 855601792 514863546 903758214 918219407 323525679 185883076 839344288 985261658 94867601 610617444 65083168 880212222 803715554 762094461 681042235 281930215 916464623 281407653 159337464 801146742 558382745 560595879 883443635 164179841 568205910 988549377 489202331 791653838 405174448 894518375 89638707 100251291 257191108 378622782 643386580 311754521 935052227 508215074 618922538 802387436 539958644 743590496 788372403 491957677 268287664 91085436 161813060 474599784 430228453 717726381 821250435 929490718 46584724 773483100 788007021 963404868 791325396 212955049 283776978 554813507 398765516 411508710 146720980 48397046 991057980 885888025 678619500 552707887 788988917 56268158 198369509 18795313 682616156 24832515 166251103 695984439 957381611 599673035 692396877 332020204 716376240 14491308 925847031 404473074 945166029 340051633 169167865 191914331 497531382 823425688 550901954 203745331 624510710 574477140 908067350 116541684 933015594 507193740 200718989 251722767 119570948 974906395 287826962 536261994 98251657 200855694 59864676 140933341 757978324 496803753 551312792 106938036 962742161 664554978 460977301 989864496 480979842 10622436 322681750 855525382 780757758 741387534 494776492 819941598 825434477 874516466 325282362 35709397 656704973 158537942 674782071 554280187 966563632 318081078 477995247 657195990 834456380 261091136 191648002 545868766 897005737 183332438 886172772 286416639 950865351 849175952 363783323 577215514 702008053 217467191 756636293 167494531 5562667 679229515 170485455 545246084 134341745 175021310 669424766 518273753 216997478 929580855 687265642 628261683 574415546 463576337 866089662 175281589 631649715 403882329 86927226 771817850 743092908 884361747 947715313 549373453 309575826 496582901 967949643 939013615 306295910 92292074 988992004 828821780 206005693 584898960 294686827 388417894 780190019 415308731 896574500 146958145 771603763 355082736 436166567 340419061 581684705 76400106 225035967 998198856 693611056 446301721 419561739 445586673 329307164 206885406 121994368 946781982 958374706 356220753 900183013 132027119 868901651 925419323 961283925 693012984 251316213 176607260 339216065 721045955 147906337 714028390 571082860 427136076 409665398 888805439 136848749 220279939 389446629 264713732 208817200 506121421 879508467 181514945 174085365 66563460 679452730 672092601 119223888 655239026 717745896 623148516 763684263 21772378 510543934 806344300 17537975 831250800 353843474 971334959 189017872 710198747 725499725 382813504 890983060 315474234 287983214 274985318 197673980 959760924 821657094 6627996 562339411 436265094 242727994 461997711 52219513 21018226 101230660 887046691 641090465 352098890 920974066 340391407 763761619 654225265 460188966 639712956 333035627 267066042 609526356 321487369 644309656 213860079 410024711 95081098 450953182 77300555 619896156 627232421 371531924 387617280 812628356 416092915 550949479 406191795 32489031 673504453 188797653 987773179 197988220 103215773 49572275 394169061 954547346 729877680 265660328 81280883 713153803 40175979 852560047 791730456 126523131 761580523 358417561 378384957 277837197 539325571 633490313 265982912 147147134 524618042 335511158 239922544 932711840 166681162 100391852 206917266 29590873 162960547 843588939 163116639 246231841 917214821 823637447 763197059 850393352 319405418 716649574 281729440 557542189 133233082 768868805 718510025 315903048 269955092 260993108 458620167 281041441 432150636 835278549 574271960 357451798 745898599 733356257 893777835 646127001 75658720 462547811 537716581 297362608 795896679 147967770 551994335 162187380 779628221 58737947 243059813 281536402 352526170 722990414 736937784 105199309 810444519 517292268 643830797 638830458 762192836 839637255 251441293 913191938 693713795 924640514 379513555 966908515 701240683 419501333 383050737 676356784 223144182 879049418 629463147 550548364 706421843 465618819 671659705 740114099 591197925 903926001 186887626 254368626 977270209 846380446 887532924 270389546 959922740 368685413 255759141 68706769 551394363 864109556 840558093 740934256 348672778 68384081 909540849 293335462 169457542 401492050 861218178 433301539 781438666 651946275 8053988 548912430 698889382 799937476 459025968 48512288 760910363 265318025 38928882 538473447 90196448 862297240 138730923 157033348 972209376 917557358 780618320 388506253 511364282 752305243 694414025 239031980 217136704 802402049 892440691 732655389 282011128 214180313 58803103 85213492 88995998 753092526 488031248 510426325 167195040 759732511 783903105 948341498 897700769 753311521 215265821 254342705 219606262 951445371 371247365 837933851 254302764 932332873 75891918 326318318 332918912 509597562 995788288 7458292 640881253 95627602 873695128 852328458 814031874 282755816 534715782 389890850 379717553 105427881 962233648 277690305 711576194 420993747 585927149 684160386 978500278 392074235 32732043 138394001 905301060 991238536 571824842 399732016 942517591 821774645 377832927 498970165 561429197 925489811 291085042 326518666 14899898 683968900 479983264 433570732 512996067 26074306 649197177 376128813 307658052 880208982 864229251 304485683 384509578 363391009 508920501 142641654 379209370 326020694 643855229 555816261 186793736 538757630 705388091 795054850 709973409 956181363 828533444 362561953 193284834 541577445 199255775 987977901 242752638 229780696 96680139 703985988 736546267 914177700 945321400 855845526 345201813 890375924 152899145 649858665 105934074 111432263 181539096 558191000 749283981 193663858 634656050 870141071 742325892 457870365 484770455 885964241 605096522 8167745 468793019 820451955 13542397 624029104 614871816 616086686 427517169 286403725 886399322 364721168 848952363 893703120 486815361 240213148 732896998 81828547 421157059 235539109 773581074 676544135 92373079 897104295 841132496 130565264 546512874 535922351 732917751 200169253 26848542 235234013 54040722 993958369 75218695 449177065 302349664 632611381 793973420 309182620 154180947 6900707 631297932 744151378 309667601 643966852 165133334 836650623 89133430 221141252 169475119 329923879 145502224 377550369 480110512 602969443 185250722 312511727 882519782 4015331 546383010 663793750 684027153 641823591 298780602 205608594 612866789 856659781 12306506 725864883 86205707 364756967 888637668 794046491 402424993 609014857 950791631 411819778 860420022 320279423 127387014 288929525 703989199 615082285 167926582 888333907 924214885 570139149 40742211 102183375 529316197 653969005 45418947 233627889 724474798 75872942 940646145 229703829 608050582 871977414 459826172 766723946 650385254 405548991 795786981 943673971 861799897 632647222 859531173 68280202 895315617 430437597 583459412 695740888 171409634 266699257 319687107 223121503 104927669 620391652 993012723 404929648 320240807 539017868 48286364 950152757 943069239 704075762 932199335 321278248 744699995 80425645 743236532 222695066 487628540 961782116 939079829 624895533 836244597 62398551 551109073 179610714 501430296 667193815 841725218 375316205 506834601 869831370 584239351 918825859 83915489 500504360 251091187 553608723 844632044 393789568 204491884 734651234 813456875 330255988 891191533 257707917 648740979 712295224 103910068 810231939 480505613 360149527 97999157 453539977 544146868 57706478 806035861 532762292 946549594 228601775 650870063 86958962 898308195 470230240 638319635 586163970 53728551 169388569 611087746 388978167 482805876 479331722 902721651 663501753 841688587 25738610 467241490 441763075 98490655 432232617 713760315 901382758 957357273 286468375 306874371 312086725 910476502 56520762 652605488 115453911 165915047 551445925 653115324 732967593 578865487 108652923 265661526 825651737 218926537 514871544 435952864 406362972 499779456 550149352 115778546 293418104 544435157 854349358 661817942 505723083 123585949 118943807 546472330 153102210 601287584 775587748 493999169 433203235 253322011 234499708 150827234 18543364 506477631 233432823 632651271 600133585 27755696 143051740 769825024 489780234 966146566 531758340 290829390 189759362 214928975 620284892 477840936 49335009 333811851 778170855 423607545 484337699 506446127 849487162 35725279 177233687 183806115 403760383 839957806 355246562 413012420 925661682 317681899 780983161 116550754 499508967 760438610 793778218 281625539 468335426 147172689 314587156 709077791 413415293 297613066 888734122 481677857 594718118 565691477 320958003 973442924 688053726 684074299 754579533 611222292 124306651 251047036 205972582 274369313 747361895 465563658 874752322 449198096 186135518 357270412 270484088 210089297 258732212 768213724 443099381 625641930 457113325 830817417 4976503 984101458 364068259 374414934 557012242 655578167 670569860 249235897 95908271 948666809 687805778 2535517 343285384 788856460 235363937 840459936 882971822 873987674 961227035 856462870 632541059 635292479 246444415 451389956 564178752 577465931 785722782 827526630 351228784 299677700 445804062 198348777 902441331 985235169 696411319 716651377 370560252 190603216 918793912 909467029 665789076 209149105 66844546 432396190 1588757 207537368 471589644 422355852 46915887 990087055 983071838 35566225 341592550 884686481 709492758 538946963 911244562 783472785 92083942 879514542 724235997 319595441 450321427 485105840 345768777 579938827 808711160 499911580 40601768 96241196 944196737 808565544 368403490 777702803 787469233 710970430 347755058 342112567 167947292 342247550 862782761 498805758 700258157 93094075 221902762 866313543 236946146 1979258 950711084 343347553 913364427 422942582 946827900 83398161 695246862 653148191 772929080 843439888 536712870 701203989 116053844 788972171 533406751 6871474 115457945 798412706 498183452 769877374 316415521 284518633 550527186 810346680 427055069 376067817 270820234 763048404 259990543 424838816 872860450 524015863 710234320 862029309 385990541 234460797 642471307 27706981 47217486 798059892 391810944 985667377 911092225 213395486 483020866 200167470 885246675 38496371 778941497 480205851 877249285 280701085 481890593 393480494 394239597 142808442 752251529 625270160 143498740 868904733 607603285 856511452 560736793 833338700 854649149 243323300 417180524 692352516 567203148 103750636 653171476 173688817 193238625 109748141 275265354 220241143 375276209 66251859 602490844 543871660 328345923 519777344 618896555 885482203 967197299 774266695 404503597 419335170 937971823 391751473 824984043 411071956 711062461 890668603 456606468 239261625 918839731 95504278 89503913 696242505 85843710 653495270 87187615 314527445 129682460 23223748 106105792 655498718 170229729 932048956 707104378 750428571 63401974 871316816 257738574 937310072 227146069 109764211 124718418 145030546 495584463 922111758 30111408 130694971 561732486 122862334 615410981 715548540 836196211 485226772 768967298 719978894 530099169 106173332 450629423 789585760 715197936 462964406 133260451 818698773 179757331 501814569 817894893 44275331 284881810 842834571 955530286 985111476 347831561 18223090 806964508 841725800 923311847 202338406 2887553 342817426 422832368 693864804 750303674 668394967 151903164 842065757 164898361 522852370 236089653 284060724 239080452 194610899 274045213 271262148 679004979 3584219 59316614 171645528 611081077 115239585 533360472 526618929 789876364 349436624 328666830 681248516 625873612 946942663 237013497 513085561 613346208 155509015 906060604 716769965 28102662 168082953 561940430 944129457 359084814 671289366 426108987 754330376 240911966 411541612 723509987 64836141 848356017 875265392 339960442 860487435 232040531 371270966 514315398 396625027 816374695 938366475 403581413 516094697 123314081 877662444 924591428 492928647 111853645 758282764 404945832 565515289 809010502 167698258 765126889 226640208 9376319 380232408 176243762 889570127 614832510 415720813 554669187 1479473 93097564 371919636 613281583 27924097 595591110 975916931 907240542 596720576 47294143 782628517 1862028 741898466 882034396 726206233 342093320 136847825 591727814 400481968 948807030 93494505 782223548 429273842 282912846 172474746 739180814 331306906 119770202 54830154 324163235 570614038 749891900 468646416 6890868 207588616 411733222 930313722 654020878 418493639 746000416 424482856 888519444 995221983 878937349 369535022 186368955 838623373 323442566 821824918 224405581 450120259 547232229 15470172 400140199 338466858 941141308 775626096 976190138 367471003 507276788 307783480 474090765 228926629 838032974 215862795 10424121 244814475 464369886 302940855 281278828 792302147 892306698 894829819 123366887 663259383 223949199 321634830 175856000 834158728 720259325 64586518 150821921 682298886 555026486 191576498 289355591 84999225 114968819 117638257 467518595 886053916 327039039 180845913 230435836 152964444 596800761 788128865 474628332 941084893 52623447 571850742 51105311 363292981 901452894 102693754 579106423 287566127 383484523 411895232 384820074 881142346 342709165 921115026 826537346 162077496 395123624 425322539 849675996 937108063 370913971 705425853 381763498 359561819 819509371 456651757 877001905 66043002 148620926 157267026 778234828 586789182 799626385 131073785 187500135 615073503 510853979 292233956 296671748 438300615 795302615 86664326 646211770 984310548 889807574 930286153 64366512 964664089 899433339 396275464 175213991 662726621 850977213 592454293 590934894 773905306 296699368 695876660 215205483 857715007 442464796 156831006 23938329 817053423 433040588 318238464 345865604 785940096 660662081 149601401 356582351 995102717 427643925 522363295 927663790 591814181 508822968 554050171 313228268 787419369 551778543 288738696 433750759 738544625 955359568 791874616 291654415 442666264 663582150 70571887 140563050 829668076 330131219 192400390 991400467 630044463 362879049 348007753 799696054 744560473 831944016 416896889 128487702 613187859 886801252 753034827 993703048 987093693 231162772 434731368 711318389 899623913 317754692 89311467 221997532 396387805 646748332 283224550 831830477 946387989 815977814 808521437 617192943 141692608 978165924 751805001 649442811 448069438 934234183 882764566 236783934 302834856 778354889 729681189 847311131 213273672 136332805 393851339 642215303 60693532 722189737 350715984 115181451 559550296 774075323 150176881 600282566 36248289 597328145 39598815 317681385 432222674 992630743 152218558 5176 402254843 493407757 386285863 18053136 710751325 980998663 810279846 850393179 320268207 767912171 857019068 778440989 932167388 875499830 891293022 722495723 938358659 851788088 603912820 142339439 649681014 372597651 757527899 483963878 979203131 978447296 404632676 194263969 812037518 462924425 951459666 998659207 778827229 580167312 308704224 481127314 686350282 803208391 959003193 85757262 882151341 940755190 207870846 967718493 13101072 803225145 688353860 105366005 145726001 984406399 780508947 35557472 989226627 699829260 68769512 976096123 544807213 232827383 120291251 88718135 542923913 799124653 188154586 950045724 919580070 536055660 291236789 852445633 125810375 885569481 597952016 275998037 739570658 481010219 56073388 7107609 706610978 456304205 459656637 622278116 843543910 599331776 218264429 160726942 143187647 315825254 486899800 140288965 443654390 29035768 378140686 240433387 190179843 198330754 104628117 152526901 758200471 970034146 389226981 74379230 542892179 120060492 39916649 463938994 151951759 377702856 702943620 175166355 479940948 518552755 975666442 899864056 866721378 715412794 897429187 1292393 210328171 28757986 82205419 977535492 655319254 382889475 242139829 568464379 936952637 330477640 112269507 397234196 685362159 656031536 666542512 294410535 323474031 654620560 930735238 317928356 491875315 299530511 635982152 667009034 829049830 138992297 523700074 259256689 612746854 16915245 97563731 90300929 297487558 419264959 866607586 995100537 460560909 108471382 821034726 487661993 29110646 870901311 395289509 93819640 753953006 317271192 686217814 592459487 866485658 349847766 40518567 283883627 913776718 98465088 786992951 980036799 12559382 25864561 431983133 826024848 683341489 353560282 838607711 545055655 967397649 694409021 225901692 322548067 389173724 254083379 344349667 320764212 838669294 316708519 274624377 855980577 120523989 11076953 101131544 3177027 626932051 653913437 855423754 30178120 427573216 505275289 826354322 453930225 267801894 864852042 985077859 833534356 147679363 5579135 893539111 920218266 168248970 402439581 858465785 35370242 857188738 987428825 920816363 394431452 747347941 145428161 6625153 826662095 44421347 770988724 167862580 292979349 737688797 258711653 414068209 310743417 547781610 273659228 25248919 371956703 101563989 692996725 479128957 743427261 391642396 138562142 548510953 676185114 260898419 626021917 137591193 687105430 706165311 896885641 715287358 956919010 167819420 766061004 896296189 435032131 801059416 967467495 758864364 232119571 327911285 323967790 875202459 894449216 642530731 44204488 979582088 499456716 350365923 687203120 396107433 974111307 737766333 395113143 190382055 218084200 43951627 62761983 850739869 216876640 637928788 532013441 829794845 247886213 375433554 248083720 786841387 340238268 640382580 435391540 126099072 108387071 728739421 714903801 74219848 828614365 346457699 6152733 423391140 601241845 350082065 13612477 94180137 851914110 860329381 702524360 127724896 358126018 91000978 903886466 701073988 282058399 379948031 925366019 152358087 887005445 184791367 112211382 212685645 814468730 369019512 524731099 987639854 297159065 626900692 425797893 789836857 703136910 551488338 513975196 432738092 135849372 292693789 204534107 72950845 992771991 903348244 285927635 617928852 445597802 389743433 468550887 386869710 215523219 831131010 541557582 877684860 104058530 406667195 753890069 88472226 175721406 344896418 332598554 696232504 584686623 836248602 871876754 610633132 823007893 438287801 609051011 113476703 921177088 85879625 894227787 687930659 164512213 521752650 806200599 142575299 939174560 60664175 982484589 189525115 778918012 926209821 185039779 870598268 36548509 408865775 860145253 637913194 356759238 284449588 98598451 942058461 905965011 505592687 438517472 142985955 584526897 37393622 38776596 974470268 214702433 998710229 475739339 430842141 273539449 309411720 491228628 555664174 995799458 100708420 854066771 650440076 139492507 445898766 699389760 936960008 465377588 954589986 967754470 917093349 882624724 971928174 527874916 795654238 850901492 951108116 808403759 671514910 676435618 86822380 761055630 326416582 163984127 941848063 715559709 744124778 686891457 415180045 656143947 178500884 959529138 661154568 665979356 455497792 287738159 426912151 164029287 551973470 482741417 662375572 548977112 288953428 903887656 411282062 86426608 289551097 621837763 482720072 920174272 82593179 325972265 71051832 623252018 41030266 546724891 188557577 466812800 196685131 279796719 685613593 332637627 492668341 948907791 937129212 607051333 497909207 755400568 178217719 859860311 796356800 417333052 518746501 900845692 825470710 620376320 170588374 732713236 492826864 571350142 127440459 130772690 244000668 270427908 310330107 363223615 577459930 526784500 369594418 218524469 988371966 851120962 156260844 265541476 419920978 727258105 380090206 639880912 390286737 642634934 214711662 904669264 479648366 816786475 864819510 766603281 569134347 508470174 119974021 509444114 312397698 448714087 811590749 684196518 679544416 698576757 19239798 231922933 302785317 969114058 898629306 828392314 264925381 146823931 944600519 612049030 270341162 934216881 418016624 765748412 54158511 940128810 862787644 224787859 860359334 409031864 492868838 553100759 792914388 525178945 754334939 965154345 706768880 67865533 267020479 803938170 437723943 262015420 445715176 440647572 318983323 894776541 353101793 697253265 812865247 490539096 660611305 586977890 293099645 910836853 666385522 873170249 251624048 122978579 476041378 884985951 746065578 779227682 212321237 748264207 33047183 350498345 757414681 184678553 293281656 748797633 329934512 821577360 896512818 925595927 704547986 832461660 987395196 242097774 409744616 991752889 764923788 32088731 935720594 868529718 972918923 351731847 269928866 653617591 189931540 696983217 885071327 964616180 967413689 495922089 238275395 213807352 744006782 251332758 244689533 246878370 606165852 580594609 777202544 318930215 193338815 980271304 106817970 409280398 330564105 421722044 23861006 979100210 254263821 777584899 642960899 27532100 681756052 884919335 598103618 124357959 853682396 426757188 471858995 379531666 408303891 857894030 430897265 856996050 30297824 253941961 711286345 30057861 193686235 118012879 968974400 467255935 802681872 737760270 713494410 260601193 938147969 320897031 186486163 204547901 630899105 972624592 175253114 444186316 75301081 383809171 226491281 443251512 258088966 752750349 526178783 120981626 759800313 95629840 549259422 843526621 337578230 932548609 810575293 779651201 817449270 774676058 836238942 548726233 232401765 942914089 474453337 367479853 102409508 315909264 123246520 836691225 939056008 458990403 681513273 846382092 844694937 182169869 317718735 938061514 436503764 904881739 274789153 878077931 876026282 658390895 711275786 434983769 289006079 177744766 427729943 697617622 53005739 448859795 612311308 536372340 551628028 354789466 271978592 3085595 34159410 35628693 151556284 133890310 950712066 551376795 239494527 796798022 633053460 336409300 887280957 55930686 139893893 783851838 207097403 172136741 112871270 554889195 546618613 920927367 276327226 9200257 72355481 771957700 875122044 992001976 111459209 839725456 731249175 68018144 600005597 456843121 559561196 248301912 903577567 945337412 436862288 29214488 991858829 101055161 276197515 829996840 750295578 321895378 993695322 944615206 169740909 139432296 297034349 121216709 402356128 65866918 105808874 773716552 466668162 429373068 952871400 220452107 720093462 15812205 386935797 433148923 883007762 493733489 719026321 900482072 924600929 871967764 425228720 993814778 594404257 275235493 195519804 60802377 136519846 504382408 566682513 133017412 677188853 855064565 347648000 815888187 246091338 773494518 480254284 194156565 965237010 80359533 429837359 822666699 904084210 708840012 19594710 554873835 29598014 524652890 671001697 878179862 30685570 368005557 758962533 174743170 606433789 528907083 328684649 371230840 697976353 122987615 308170604 669676247 376605973 80449035 894002013 683146383 125896755 951256248 374069922 591599399 915979658 563377831 865491858 676470073 927578716 81288299 499576059 941503728 766478241 734594925 254713500 97626768 246308995 882292839 537235372 283507439 14297824 401967594 666212690 175203828 707879372 39101144 862144298 586210079 573587468 832443626 526884806 807848449 793548955 890161963 315829035 564874943 969943849 27090554 668598096 31635091 662816407 204329485 245368994 967043147 432781180 104772585 614050435 834653384 848345251 73427306 214168006 977649537 832377227 868792770 517818165 37558525 844089573 978749042 574812684 178444124 16090906 525840850 466015355 203899599 734815939 981119887 218593319 111796252 504061743 111197991 544170153 346282267 104976608 68310639 423385613 877391675 778312206 873425422 655753557 735618558 887623970 837499391 605255412 155687800 60792124 938928659 960121684 76414676 868014767 804150380 277549392 63691983 370463103 763034116 522442426 108852283 478142442 277628196 396128982 529233534 70130396 449354733 232387293 689999888 842724473 513401042 342677116 736912128 747347095 264480540 862825554 823200624 797855041 992041317 5877365 641304596 801891637 862162461 871284974 78724792 787384935 214921737 445253176 658646711 71649404 260489406 276076997 507463556 833426256 807182122 694220921 770567973 405994352 233844748 415327021 560661170 216332961 229529719 588440365 484339931 128637015 599165523 153129147 310269024 933137983 689728732 507753866 977225878 257745589 619254561 389267779 576041449 745767246 115150470 579766787 136627284 652490064 529338691 695809755 816777706 26859573 435845346 422535759 823614801 846868524 818533060 701138648 541841474 824380056 347763869 987086690 44157451 517569167 656780532 732579278 867504141 661379932 206883748 187364721 836148797 751118077 480722526 362553235 525901223 645114533 530619685 986791922 480341222 915123003 56148688 745184572 369013422 479931866 232996747 130097560 163593283 65654351 708669270 229783838 429665791 952737182 364931205 635194458 152926160 27042942 364195390 473767117 516215735 481195480 842557182 467594092 228586570 993825611 204112148 926515487 172458802 370917803 499538725 96043331 509040046 584754558 173927590 465921065 731770127 413082494 316319845 851700117 692364602 213396249 24640257 287814975 720900905 349120244 830514541 854033749 430878058 333983588 825503089 18930423 531086494 446443251 991454761 180507834 578158587 267997921 521985156 695329062 507331531 433449377 260634566 531624760 741755883 755560279 112732678 407618785 26109005 886532193 296383665 504062340 15432566 630977995 515874565 744790652 533707520 17841625 980206743 498423188 842484249 515860609 621033422 518934925 48567299 392198638 468147813 755154075 430497938 688410878 39085037 613721832 426707121 998870469 453912648 618077456 413912797 135896584 465749551 528397988 966855080 261724099 187022254 442270887 976254008 308647332 274373283 72094228 681767109 460778893 573167426 442443349 984066846 197236502 697807507 21555149 228436773 74867208 235324146 449665616 818370894 783268579 341004431 292602278 400677156 840504665 627816428 375440908 666275781 27783889 969920610 913545906 430456417 128563429 745361564 230736957 627728062 992714724 49606937 384346951 119578551 90681169 741598382 391749850 183122872 299806817 328395010 489472761 449118532 942902913 692734737 348647192 565656944 963518927 880806826 456772255 960576101 299149212 800345585 690551146 830303201 487765232 571615709 105804875 690218422 751795462 90244283 234902919 747811914 800846283 981628329 19541333 31648022 192233571 856620060 904994403 941704487 971422117 875726427 443741776 997416864 617077914 145741313 371106867 236377654 182582529 167528063 530332435 738597298 530822094 267208087 117169260 998541427 996359079 833346530 659212464 229422313 837957990 884982091 146939844 629634587 643311770 725556114 403597695 167825442 55459333 998526667 746364462 551249580 989327391 707648476 68265235 488892282 795880849 469064450 932205793 94888674 574993340 158379596 364299330 785806925 235370800 802581023 981002321 974339770 254041653 288379312 510059808 876524346 996822341 288405389 746779188 918306162 237798799 789685269 410845444 46973468 622234998 162819067 106455421 144591238 819345168 407065799 711048833 494332433 395630248 120076628 551668323 239915699 532218173 26640467 721975660 720832886 969609473 635700423 216870490 926598135 540669402 477166728 225220316 278117863 497801700 224093888 219321367 960221070 361335788 811220080 190922020 528525379 959848951 14883052 200069519 641906933 785018809 155307611 905211865 548555941 637248287 492519992 650211832 764197609 660365510 34722260 841761234 357909099 792461953 513310417 867843013 425960296 475310038 18424744 362563874 348681778 292706946 645975588 854596269 154486702 504748785 187845605 365954335 129745879 251304646 841725151 797118372 787664953 950826329 538229208 465313374 496979062 659704372 555885293 23276768 318169797 716806038 641330189 57203379 456043118 461494512 390942588 831408084 833214031 907741034 544642130 15759156 339502426 976125023 651789050 879591223 299214101 189974492 978659251 329281590 958533656 335156517 940887314 535998717 710609043 416965937 448716926 482136909 625542853 667660073 817758899 891753563 475702662 607664365 573979200 225127759 451614398 378164110 250105865 420367302 200804331 141685717 467645893 878214225 683424415 468018363 600445569 429277940 690155776 674225135 517047579 982863271 404596295 394820691 502273735 123376345 51702081 571965055 694225806 959243240 625834193 419270461 684184778 826448297 442390124 729367051 818044332 885915367 337703067 774694300 44750262 487438556 346684285 836855895 425098561 948166073 467812674 539936983 993788921 313050404 989147313 22042217 835275099 479206069 52670883 474310033 673478462 543007864 98982277 723103365 538039879 334424942 230594522 444625328 440706163 108839947 29917367 660622897 512420241 481019065 322260294 609615449 647730629 551984212 475924035 302984241 150617607 333805229 914427010 222232561 949796002 205403911 932261735 844725386 227653045 656273053 739462508 512220190 444624821 860522266 114957983 303832706 326391785 439846175 99894049 718557635 644359917 55067328 617140136 594968222 593896240 763018759 491416573 444610310 423356278 900513136 308788607 494370465 490625366 601639532 973507487 499595596 839077308 392791006 457067106 7509907 455476073 107516576 105620194 931892538 164428654 642856959 651952077 994099639 171934645 897855035 134559716 232797876 154426232 511366409 846941822 351815314 819345352 104135185 363098114 979696865 633628167 195776879 507414640 732054761 943349870 997709366 912721881 279584293 33462920 369228008 882604770 939348163 115258805 707784703 103411014 716070437 400936872 522298984 19583057 502636898 438650089 753017347 68888421 815513029 642533716 769498148 143221369 524574541 758406297 216315413 825720469 564310316 855020218 194319762 775268439 996343881 626854031 231005003 665991793 312332734 681701957 588288869 410561064 624510298 782801371 2422265 718021079 981999135 46018980 190792596 939378538 137134277 876055751 870941622 684039907 487440438 145560002 60679507 632808665 506765840 505642211 553137493 241069300 59085606 660101838 210969879 791797874 924369919 473361146 413890283 953628837 414264149 23882291 958676630 354953587 936466584 557395225 563852239 151642581 921401961 737420448 499688131 663062104 162288927 89050255 751688340 950014367 361260869 590799873 6718933 382548190 979409946 624401894 346570512 304047201 626843663 450409859 190102336 812953091 553352013 46034670 971162199 394939320 577325101 921870739 355476921 59393539 826545597 990755506 831412415 428170368 933882434 542644702 93692214 506930780 444404144 212347263 909012957 44113111 973631540 852322129 193781482 681571785 508379819 198247651 293302406 374244379 747129640 431532057 985123148 796251721 576971122 633268651 280369358 758521575 528336259 128543652 646918160 466041113 41655818 770425827 60883979 553188121 739238122 481041565 135815212 860181684 234568121 835575001 391820498 268745165 883566658 931462386 398466003 226548953 525323011 230071065 411011831 196486498 585083312 50976721 400225404 725914245 389624238 741880433 206070161 165867891 823163545 688065958 229725915 207599091 412978878 359768558 216161522 278952159 329487265 432747549 67301 3712674 567993465 582194140 579499186 534180289 574823087 429270565 762048975 895984463 16010339 598004681 750922148 247468406 529634535 94379498 870281742 927455221 217156929 330600065 849224158 690856093 96038573 625731289 296623448 176887251 148562713 230634002 593069237 147773202 801278376 760809375 993393313 864151910 112586032 369347528 893788349 461362673 795464892 191296041 480854046 390723177 465994250 224960561 607786444 621108120 176409101 783216548 607154500 357554651 76764524 207746842 32629495 108096932 643629314 513047165 280688841 924347385 547143260 338544527 281383570 43992306 203362878 615126626 742857376 992945726 383277342 617382878 809245235 794754975 578359719 585102910 631301632 520741737 614347576 255081363 63116463 479734535 862911587 250331711 564011357 620669302 317171054 65267580 710157851 353226696 748788437 736965587 803787373 765718947 151538630 460805029 687727051 1141184 918269091 899250598 506006051 698821228 220310916 229798236 474115669 455443978 741030578 934440868 38641334 392524174 17876269 182608686 359973774 770116355 85597479 297493244 352945562 876571143 88630919 481410791 895395978 410453578 480644456 860998170 990767492 730933779 196123287 831086997 623676831 209172666 921346584 225132715 969624681 763539247 313605025 616870276 590639714 294141042 172499741 178206108 244213119 796775961 621976362 432374338 580878759 929834189 998904731 26689306 668177721 133231308 837918712 260276380 353797509 898492521 502843385 688351378 437475150 922457224 962575 407629982 173333839 177459491 315195867 374341810 429939378 593938887 871452341 861494165 122400666 702589975 767306790 563428197 958089115 583200328 908756078 20744720 553790524 797354404 859439359 877588953 843318652 899174151 439061759 923502041 204724810 593235301 363539402 423590524 889826060 727517762 319251823 227921408 855859225 924906552 590219054 947301113 580829247 187468661 369053696 727748816 83633470 884199482 877158671 969480767 866047562 249788765 936704057 885446614 293794445 559141576 113435281 803583098 596651938 415490039 352692446 159773153 702472732 507216510 873989147 451351831 722807805 7123073 571163637 631708923 204101439 315287355 28888400 210470082 439731279 893747575 518210243 521225332 346608780 378972698 785174295 931299690 767665357 772851863 856700363 139458774 73888216 364146041 496264595 538822715 676381420 574536925 181909205 227637233 60975160 324298997 353353258 556752291 843723105 938894470 52088035 61896912 100976640 586625386 955752834 940513613 214799394 475612432 35439164 847814081 446004422 473338615 732406142 837951527 727967330 890798390 848637029 449039440 623535455 626754807 195212612 245196382 881299096 781670647 961789986 754208074 498163679 853053960 236867897 500131680 485741177 985543568 10711417 875987134 659088284 70369800 703021314 115715544 451348728 651026813 310673326 279100919 576702763 837167121 292049796 171872181 870843467 133617275 604290374 225859458 447104609 40800387 343990500 124043811 156768232 728103303 500120071 767697709 854578770 246313210 641839751 372142478 403095683 232125151 731614453 281655301 191343956 987124306 13325074 885790117 430203409 959196159 167845462 41245270 62524668 522028713 486962794 777344340 20597704 787588517 719196078 494929326 698835486 962345820 580512692 352075464 669618203 287897549 326749123 152332505 560906960 990256904 449147733 658391406 902363841 590735284 170146969 555244517 755824743 795540361 446998770 103008243 842316974 266325463 426021237 75378719 43996535 908239870 47269743 243454020 330558999 54926324 503627485 477215763 751056343 608700610 420286195 779564431 819774578 331495175 989129878 4472207 884184217 647623027 495323873 139274815 958717554 747280717 358612900 296410015 367142421 952782062 769779680 222099970 557402638 177367108 896204876 245621393 132978654 939344208 508299219 508205510 29184122 12464808 810762260 442505713 418344650 806969334 21170657 621006775 599577131 527195255 393045952 617827469 884788974 229128060 574220909 84781377 787429079 505375980 546726742 794849394 95092126 68487104 199801630 371607315 979485553 197103238 107278362 196397804 384855408 687712224 324470999 622923545 93857840 376298754 983228050 897020553 47895097 336785462 605588414 203021440 95309448 454787931 181616258 586169109 295375630 584469602 793899320 535773109 364162350 529142736 358020336 62901662 761390147 680294720 550034923 33247333 655245848 62059486 907804704 58503281 532554094 680019692 320946106 394025853 656839290 756942913 380276631 280511770 195922275 34698436 539833803 408864042 112864456 222025462 761473563 731306086 315455033 784291174 42587267 191151322 207980217 61908282 399110576 701028 984099651 653065900 874801543 923738936 619026754 866323339 142259100 967150686 639666967 397457334 992521148 674095154 634760342 62728101 919402084 330731748 569791881 62479584 82882887 188599030 532543532 38029445 616378827 771628481 880811439 666953158 180761484 40457200 685615288 653941865 622201560 452876802 753245150 863414086 613721394 99294412 486558255 246727373 686998480 978651125 494757290 525894013 995948573 878009465 768808390 685051502 478759991 569027879 724005354 424587208 963752818 32233251 915140082 860506954 129429715 110886500 959145649 64729284 183520149 931969591 109026409 540996765 269989800 390895546 451137364 750174797 967361069 471682658 45224479 282103012 12900859 877402741 117750890 167144322 648282141 468946321 119544649 472125405 773535826 834138403 636567494 788749502 376458124 24633585 418053468 58029699 321803377 205740945 613396605 215897503 660769757 3729135 225563918 216278294 506020190 648567499 802789094 363812610 26117047 133260089 456860242 336182032 924861278 282984735 300972692 182522627 44395773 689646266 976925791 723814192 289552884 235091481 672205917 591857921 442890965 174942624 764123561 853280115 152814055 694698631 12961365 860775319 595557797 192890201 795500518 636029204 536447804 388811894 325000147 385702051 310670608 148419217 799197705 211147410 959625015 112470834 955251050 460462914 715616252 918255924 194835017 876441001 287676510 213177160 370859247 430902737 416266382 734831217 794993690 889814359 665708661 241118342 246351225 309135341 519584299 845107892 572096049 844837336 494690945 49777657 103816539 183559794 736064888 692725162 638058115 803134121 571500232 322647022 149891627 865070462 237141594 845808192 312605254 300567176 533451982 655133681 232533693 444251759 145508854 4256931 874111469 549666161 682726745 186690767 207656743 206009312 980668081 305849408 458518831 606349473 812971117 702535830 87847102 965405614 12960816 444842949 83417856 763755157 404548944 481397907 810101271 732431608 290713944 279788317 92632982 592921867 512123014 961144658 876073734 277457433 691775566 49237878 58646116 717167360 274483157 79895201 465556129 258947248 173512822 319166782 913038881 359697583 613434945 500656524 619576125 255604120 310721655 885961248 902714049 251118487 27564047 490342497 866034798 210536175 328390197 998027019 652445561 573632628 132043461 271617197 642643210 334374417 490344148 817641515 174383294 459302724 756020520 139066172 972923686 808889245 127269051 327053548 752236102 233164611 321940796 73165340 475270167 72926574 263666573 796273661 685983493 311448814 481645638 166764697 235529329 975239330 599950897 857777994 893242160 457031682 295534284 840690497 311291914 317838231 700788426 221834752 442896956 465943421 226100882 275268576 245868534 192548327 282073278 201461388 499841246 498041755 611457694 715304324 525564556 211660402 764316339 279017116 883853068 645167578 615656756 15957114 268737375 969705300 105612940 758683931 361094649 909757686 211811801 158459982 295383876 140626409 277868911 184563767 819779100 374363372 493349203 667449806 989877330 918279887 115295169 226982238 584946474 780858105 125812135 840234246 415012828 900532707 980191015 733295931 513792534 93068699 24283161 32803652 789607032 785619010 799407750 801562045 335332119 442101390 798519598 244651797 914959866 682157641 193672707 1508367 751972768 99512528 750225068 903425605 682893177 93854612 528550659 87162016 256680040 977011356 86562199 825120225 668889928 782827266 426959915 957067036 417757027 33003377 561851957 784153656 661638396 882604206 651854176 847329904 845510087 870147596 428823050 244177108 732364652 688908790 482277831 602294985 872727559 44941417 599201244 489642117 416591531 921396087 209726917 528114580 656774618 648891845 147792815 468859222 601431567 145660685 918961918 549611390 77512756 816347805 731126985 370691732 438880300 420170711 248339033 535704692 514535754 132249263 937938862 747920078 139158744 169869360 407666170 283333540 987622546 680727287 181989923 308836302 529167144 430665142 198358341 505122681 834277055 488777651 933080878 990921380 908018033 170965830 589015777 80796577 968682952 312924766 257998612 489729946 181464903 681102589 806600881 288220426 94775521 22035895 606451032 467238976 663125888 388843063 237521372 778417120 464010367 36428219 635368642 94533985 641542193 629322131 14442693 865833871 448721496 248147365 394984788 106125578 113640110 48163564 418330898 572495046 455020383 819295221 98833494 391052426 82503565 238155616 414753193 127476081 937266123 588797029 310558282 459237995 733547683 219232076 575947949 275982013 513513744 218138100 935983351 147526269 496248580 170821197 153020804 926508823 594425828 643779294 231773538 918039499 145500935 936204095 890554067 973358124 152997434 968556192 196539855 390443170 227269182 584428097 883961984 190253289 627857225 620712440 135994819 947998864 634497921 826308270 514195886 521339771 370855300 595929314 645116420 695888482 577545443 574581540 677285059 220607311 113181346 913150107 192689303 227851300 130676154 586339200 262864228 364848915 960758680 992345505 451765952 520019236 981477019 717655263 77466229 652205746 860462745 255849904 778055940 787580398 469568347 225967517 996518429 92753243 95492380 57572805 609771817 512308816 965364494 383781209 569441216 774931321 134126037 820569118 633875507 253925719 218493961 423161582 9404931 561658555 582998201 981959223 984546919 197526863 99661283 186670714 1870539 170180621 28901629 395486413 524913996 195265477 429712239 933862234 955833660 83059100 516350742 314091486 662253988 882736520 555906243 216203307 757983165 483409621 161375930 902546598 573861238 489940131 909383988 638313673 127643122 341839973 280007901 794517922 510430727 15873635 923042646 831469138 902069439 236555321 170058164 723665040 339463130 883442006 933939455 368387364 125798987 667698558 53928628 984155244 679485111 934768457 635681092 171807962 154005497 363658913 693732499 83444595 314879393 59564360 931484281 286590033 926476912 552805712 796595012 559343395 257449693 538066848 849149493 648292264 556510099 243125878 655757822 621578808 926100977 248104416 861896010 203339323 755863176 344642113 863594293 820687535 654991777 181168851 971057104 672964262 582962101 759318047 502727327 636422085 437479922 789729926 139842842 433873095 877339837 887094460 117155631 299701752 331702314 140972615 18697662 15072187 788207238 918909444 955439388 583017221 507061966 661021859 213697425 263814111 553502005 217997094 219004890 203819495 816968098 462291302 398251431 527346895 181336111 627354254 851920926 638798557 803293611 610498974 946807894 344232810 703301145 191451625 554879453 758248291 948874031 170611607 795755827 96743883 415330520 584445988 158705741 511702071 356503987 32153823 53566227 411561296 358600081 808285036 824729057 877597013 945521658 871044163 418459658 483744918 813779113 336357166 495043152 362646522 433040908 173078991 218216814 771580282 164779973 64232983 205830799 379127972 181264683 937167568 684202451 816391449 710386122 5691413 68227281 663403791 289405918 868609493 399242512 241430991 566548188 95308883 334345868 394114104 5356010 164123816 231051320 349185338 903947362 272913216 714803830 146245724 630419027 679339097 702280096 597503031 952826112 419669639 463281795 508221689 978695007 643099443 253220575 194283235 467408538 26752279 405618152 847761099 21810322 946136259 845665992 777201819 676982871 128979228 814316826 224134096 303616689 77463511 154855281 644776956 652189851 214771202 412030415 988645700 289758146 395270780 641347118 159069922 345560330 279316600 482337531 726566308 289448201 499273214 133588885 364207211 270728842 794061418 606359763 424624301 820008204 97212651 889440123 712773364 927498049 762151173 405802700 476608349 752291215 602786576 676418293 553508890 655770258 7125686 364130715 636253168 924392344 426277241 686170711 623950522 701933859 650866987 978692406 938515428 202299755 573239923 667791159 508465904 171683034 330366799 249848017 946685429 470298254 183529357 691713130 327646235 597125338 785995088 764434656 204229664 190861253 767347601 916479492 480578262 37683081 891480732 693550875 487424930 445252373 558740111 676110684 435711743 546928780 500976094 994247796 446343417 578446788 609781202 292271876 98382771 373470920 932751109 173384994 786426337 707632215 274565607 604218580 538588494 989239906 728223548 301521560 338084184 479377553 565810332 727049695 721284463 416069823 546809586 956913037 95145882 13267322 186558206 790507131 947753201 281337988 114050003 364749814 843473956 960948053 645091161 882034237 464420850 936484246 116015820 519274246 422910387 516492711 203979579 986383353 915150799 901972250 883908106 378561844 73038917 25082165 515817840 113584069 271135013 48098164 407874298 3956787 985143574 904435718 187978246 322858742 968638929 51832395 273558601 645694202 138792099 713122140 671553610 67505697 692013807 588807811 803099108 342343613 523097770 429377470 83822280 690698010 955503838 824121920 957937913 79639538 462237223 265966833 118046542 982867191 239442745 14511337 76667891 950072396 523442520 185370617 146481896 496558604 141735646 739757858 656975488 210568898 305197496 168727835 186533860 674652143 771075050 372801743 275991438 381655176 594400775 86493149 345421262 835522933 228483001 971403031 200390472 549654036 928128575 438135555 268058484 884253875 33345770 562958429 940839197 186491673 851083167 974260371 592492771 279742718 779486552 517540423 347322297 665771150 167695011 29178321 943634279 586588906 152559649 558031291 542122761 204623014 336865544 720133955 33942414 595082828 557541282 612519132 555459130 33063640 501125580 998491821 611801380 302299707 547233656 413667088 840319417 658332633 900800299 442126100 465003831 31700746 279200895 412354812 727045939 989520284 538869922 593555646 675330067 378627151 347821782 959743109 510336405 817548632 669641455 484798256 124659015 333517535 14557144 124990672 606410508 420604289 426149902 496655150 925828509 258802894 622152739 122355778 529978629 257742284 755983164 952659133 287894308 76984178 531312020 620902016 405653550 781968686 185925367 511663395 358844201 450751328 539403592 696026735 77372018 624731612 877067515 581209828 776843321 213501036 192659355 711713332 428038400 823740748 941515845 294121926 179337760 214951340 498567211 789946676 411642435 68802610 83444499 373508813 265793515 281020789 505379286 605153812 662854122 718663811 130963681 909487167 740219368 366191964 336160951 336965817 434000609 869679988 738189420 165824928 580126628 499617333 90074668 651717703 268286293 952060283 84927410 400030645 818875371 478432278 832560337 286278949 887675571 610311243 752083951 636729476 671899339 985467475 868960389 191109878 421382568 375530715 812956064 995516754 974107024 549736835 484087395 861250721 705290785 58513247 945218691 160304291 583332552 779508601 449230025 856440394 825829707 421376332 47233428 235511868 904802880 1025355 352565588 410557269 151744403 680278872 955626768 915388195 83041028 239149389 118358753 274058856 310821030 927593335 38829685 307329948 688065890 77039381 410825613 645042537 818058610 201721565 538561151 291181357 166922982 850273144 88323252 609495931 669870114 607464962 368908075 595095706 586414174 44528267 266051317 638722308 787659813 173581464 576102839 998117353 282117079 471584162 837138475 799224746 909164071 869403029 720308895 213360734 842890397 196073299 142586740 834676304 485809172 367729967 621749664 944523390 480390461 79699827 997291309 680631068 894643995 152732378 304350135 114588175 834362245 420047638 430871282 209471347 805398952 557062475 711512866 105365014 93636738 460586130 601813410 969596922 607188840 527865463 764131166 683140311 730631809 592783740 582314328 364144790 736030024 898431380 359293734 754864087 739832589 353537192 924565362 38383212 118607221 1326870 572146809 559078364 409307382 592609836 902035597 971663841 875071836 201804465 874501267 200682730 741412423 815377245 870966918 852662426 60634538 122825565 104474610 385025095 901204046 38184144 322049657 273574780 465485389 253818188 662992466 115189367 317037463 896501337 441406661 298784939 52465776 810290164 764562096 360723775 199341552 460678414 138325253 305535886 762464386 643098123 25603913 540628389 233365605 848675140 320588311 269167817 53953582 516115845 553391003 206659566 820248388 596767887 602027544 327189568 436320867 743021975 645038691 166278558 4538394 63776709 149341285 384682778 161216333 323938487 808858524 115246458 660460467 646659323 679224218 614267322 543423064 947977880 565825669 180986248 285052957 715128710 867872662 868662727 847049779 335406129 87530394 136683789 639970980 515232762 411983732 501110308 388153546 157443510 892760217 376599180 81485782 612759597 760446354 968416504 85446474 881417372 165283965 531290061 126874495 99561780 991176589 451291558 379554336 815791000 905595782 292573650 283862701 503945571 362395714 118296788 630470394 224314528 709118254 971090658 637355437 496282704 875379149 295807079 292992707 572588776 448393780 230655618 68601355 885042384 498829708 645757317 477219241 425319141 944605332 330956150 342477973 677458167 108367389 471636113 401490714 114170956 32216972 136272324 787412311 751241755 169103195 243683121 50507201 276287506 563355031 209996464 785549215 761196241 100929123 199799370 42201485 696775789 133534325 729937087 372553210 961552622 285470100 4673025 704290217 593147088 351354656 64481207 256540724 34568070 911639690 292884923 41386116 755435506 628085207 445112476 613387098 948759791 629908513 703075869 80479178 18363336 207952406 582622644 771466683 338691261 517119607 312137484 917438056 426824069 762117786 31558275 393116897 850562503 676291817 83689389 248813195 928396704 654632289 81569231 583797148 668010528 657189908 28921956 124670880 858645964 550154151 293862812 207776759 695861022 221553621 27311320 90579028 397329152 985717226 240539951 762107711 778299221 598094152 970909165 886246548 592651121 927656421 682859790 576109570 918213275 390792907 844695495 507073422 205228690 487635096 809473790 946938381 50147333 910809595 798686669 298063277 29158170 595948093 535341571 459328620 996742120 771947445 364781730 858354847 646879996 875603539 182615138 517676909 963774424 653424662 40083501 249854802 622034799 539808662 235947937 835100317 506172075 414925947 478549393 708218865 64678632 683779587 25323140 200479944 65818742 377573248 150844725 841420267 271790874 613631192 60490001 343169531 430503053 858767108 746504892 110380524 638652156 193402513 227715724 672521604 41601414 354547234 693785868 296997345 261108929 365467883 522965371 161140208 466710326 685494584 761279051 664285431 644841440 164658404 949195170 853158156 399871153 599858658 762956764 375653275 344804622 833854136 305479687 579490787 191053902 80023295 39657061 796072314 410113086 99006436 79299310 248659653 809275808 873727146 607625675 431687553 134571687 327604518 243517404 188190525 300386172 32747074 84302643 83930589 911569597 627926650 701449623 812407321 313661945 172999266 945095938 834866171 28908597 24125214 915826211 163578213 947152490 518051560 359373021 499198089 286017540 862045069 133312198 780949103 403071332 510529776 803842473 413962610 24483423 990002566 531897349 757663683 341928638 320027353 341818251 821395941 765000380 980003846 295767971 381627695 492360587 587022398 930457576 463213133 40429007 845645128 583727783 988345792 33560609 794944509 896636773 383587929 610267533 43437259 779000150 716136898 178345492 721712691 221954022 960985845 671215403 156206924 119384372 849615042 852730938 200474173 10732178 452069454 753206047 727486662 910591239 19725711 827478696 183485624 937278925 899122129 370224924 717848696 442199763 834139187 565378739 371736960 289411387 783006251 856824345 66538718 885613533 353021438 935407855 566321076 933297603 528018249 797950538 249705910 160284843 576931195 445349682 27982255 107957640 190329432 184746276 595745276 948437249 473062007 633566353 357572367 235277809 765099973 437597021 810363373 527611877 988256769 264325985 443550897 631905185 571990845 768621289 998285063 143000988 401788515 715472694 886829233 127768703 629616558 841723133 672138246 729867689 271402797 322728678 432525934 504439214 224366403 852862478 516295911 706859731 929994026 950767749 753543299 413667732 767018859 983874001 102483176 133152543 767448167 382661481 403586766 429610966 321558737 907160891 516229253 178919377 818732594 896366119 919042156 783616858 451279716 31259266 864407419 190632303 613480216 7322260 352243642 673962563 785276496 992261914 439442120 683024829 898526949 857033668 412605013 335511031 400525826 411328440 239559848 222545344 477591719 210396174 4615961 528738075 989113383 481397329 503790232 739340222 39880362 473859332 27020325 537579924 224873900 974298651 949311829 380213563 707802236 959639422 98661076 441345159 462301374 873150858 670841565 739088637 534700265 474203535 808074180 856469593 334752458 551120979 988366444 187553544 933180416 968469133 415919313 176692911 19923581 417359211 997708416 636434594 782573323 752448268 494356762 35611757 239800261 895722247 777596117 472068175 847188121 172687075 472241402 776435130 240289229 618819741 390686312 951519189 466011767 457074469 474107920 600795130 702633732 448432864 198042487 66764344 205497778 95419943 91318583 880714705 441070869 482618311 538035070 423297981 358038166 40652160 888819341 73882918 330505455 808783494 205705018 699087338 940373168 625708035 735104878 351888669 325922494 494164883 979725480 598111108 690156750 223654342 714268281 422770202 200194542 829417633 125296390 488987791 456653053 111945245 665827721 359283140 794490670 290522279 540716240 125914704 622093449 283047327 643013565 242969342 370017386 674289113 916776388 433935181 953920000 158528542 549722480 642680302 255087823 473495468 707770590 335413578 162230575 819032242 821693504 308340730 972828362 927003861 405894747 745310541 929384738 222120366 847785225 90723781 19418121 624114506 302906808 385187738 839109670 480180392 284344810 810037045 758962039 260912703 704420275 787906486 935913930 495648885 667212350 24106863 439199554 483866153 972360 486737511 929689304 955218218 477632163 432516825 793530584 612209341 604035765 879225266 99276640 112565787 26563318 113366294 600562404 881177328 605131638 627588315 712550061 720123358 781584980 536874764 249330517 175101688 126780488 260730471 767904588 964822599 471031066 515459296 472020822 697498697 69454888 610066972 628555019 256459372 590168804 285176311 819016022 230487960 844569428 748140286 76133111 3517090 709445777 785651446 872049409 298116826 231219016 756450131 717741916 53641342 718482492 883272130 847461188 231491396 81381058 909781151 822837704 716079316 769824067 678575487 886601292 110752076 214375357 789078952 854597895 528656826 339044931 213846164 309066118 162691237 282536824 807997554 430482727 373563525 439367448 485366949 813389215 179872838 836809328 328644163 598835061 126226378 650873057 174246551 168995460 6469220 209409633 255065503 347601533 676525405 342623225 491673230 802254690 756710002 116289096 783457867 653516301 387633748 799251454 573606897 781280423 971445543 54458466 775261005 79446833 290622211 401117133 889780067 439897086 933390454 2870829 525777130 486439991 127693057 25105283 108932811 280101462 630085526 75561573 698212005 131502763 793467681 619611773 742321484 675471322 778569468 456758535 463633222 236794203 811469176 526076247 766417741 241411577 382723163 938286929 721564879 4170324 96006493 694915567 321160305 999069535 542789290 839986111 896700040 538304226 909592931 85303138 767522718 994571257 199531549 826620431 317498611 143110035 969632096 933860877 86280442 332860148 477422121 621921596 240998359 883452979 352675432 292288397 124673512 708399293 691035523 630407557 100578361 155272144 101163729 287293631 504761102 269120769 242477600 501641319 806555741 913232566 219233328 472723391 664900177 648767149 480053046 711458461 136479176 487671923 450005338 276522475 272035030 216479726 75612473 434060838 513192256 299183060 543801443 854561248 730877698 698115121 41996766 54271551 597394634 975343845 892423329 4766075 885722746 817117220 403893274 983444835 680350122 781158644 442290345 511451097 238442531 713268146 773682722 650745169 155232869 36428941 233396303 958012246 262012450 802744842 664484204 345071366 378741441 24564606 422653097 850943889 216846300 464860567 557612716 203230397 465425858 208883924 390485516 144553317 957406709 402067976 706667991 61544949 342926765 786964699 818133005 737848048 570537044 39640137 891020322 80534891 852199433 267427105 550274944 859746191 749070365 371414663 358221827 613359386 908497816 937917042 726395003 650749919 902449077 849988143 467595053 720035393 991952993 691143900 421516883 218476988 606918336 491875310 536355991 276855645 436382120 66578347 450290076 828016197 2024485 380197809 124519029 7355945 906285555 59636077 256258092 768723925 327422471 709809829 970730557 551537060 483353863 314325487 180549400 142956042 190773197 77182775 535642786 122624011 78154728 447004733 273182900 848104897 679662618 903533844 60082075 688467161 970654427 114832549 107808918 605095190 224998100 820669226 419716700 917188301 724926310 4699315 807379347 25154920 233297697 758283684 210148186 93804515 37060685 373679413 985052608 596634962 110904676 808065521 901814346 334798681 265972117 883863095 932499569 664414898 374574915 813612220 214823969 727710635 385100420 906116359 401415740 823007909 380740515 525016052 298814229 700391574 498816415 465274418 758128886 486759304 141951658 22484677 985442458 704375576 929650858 513543044 92709811 853394168 843253179 875716508 896279909 567337837 272948394 798004235 224269001 892909521 97618812 268291110 503156075 691865362 365431781 828512275 928662477 8951857 347454930 707437392 72576994 490773701 466636768 392364842 285987731 866363765 692305378 324268871 791336254 763484289 138423134 208513565 124898866 792806458 123134481 385467768 507779380 252714886 158292583 125790456 93232892 396997725 349041667 345094288 545240249 857926734 984238653 238613257 990313609 980797179 818620063 363014269 608144898 895143064 659755367 193246940 165810348 686545520 799463433 270314602 769645701 831649120 491722666 857126975 339994747 500747866 80644518 445413574 198881013 27131620 923996682 460134462 236926539 260096918 110454810 246836028 742014793 371315872 187694797 465569063 806289328 101149761 575658316 109552315 380646581 87561553 575512951 129079431 827053953 221338552 14546527 31654767 143026095 965770484 126273229 131951914 414393296 399190680 633697722 39132356 462424042 119604423 614621909 731778846 389338613 742536381 806516992 443770217 279427165 309939527 762237139 991989167 71765123 793242949 325550360 402719562 682707260 548997167 98780493 602552683 85914448 717225101 612151333 797228436 218451452 413042302 215375879 195890718 310900593 939085874 188702094 23431860 382480210 819378288 369151495 851411670 512067386 339114769 543777782 227311191 477961012 502990723 750474641 866548192 167089729 241217350 359467843 718045547 683594454 176640114 874252331 895654600 286021467 568938032 64662170 119246875 75257517 916505404 539832985 272812636 459277980 731662442 958282336 960400854 646050926 999693086 971512544 935691432 199103834 221384146 451681339 917572935 617618702 853824660 673052230 450722554 95330346 185916805 405451022 486154845 635713219 748170075 243066704 502509023 640090849 495263200 374970111 271228995 682213121 940147824 627718593 198605091 600530579 84654207 366368627 330287464 473423997 35933201 285380769 832758227 212663190 909242944 495394062 642148216 231096108 270844858 569758258 176071229 926286719 473918785 430759351 365763424 628240451 161233449 305068540 201891822 372125986 660614877 761398930 573785421 356873272 319133530 635332801 635968435 841810069 919353265 982080516 742871212 550923967 442985610 725755529 336208280 407106349 594221980 622763442 392398378 973954253 318485046 130391190 801072874 799426430 739738553 641279616 656761268 377529495 48960028 310684527 764870711 168143198 820093031 809936021 412497527 683199378 179391288 476427993 767678796 255443938 606942017 794654549 245857505 779893364 359223239 190308312 303552309 376856927 775813413 32400228 33935005 713824049 978770247 737373361 849338432 92513641 759927344 252244137 719939226 712890622 291812980 972964074 417804794 248464086 796897214 153133127 322961155 734690896 568261452 692619079 603886383 734387131 695133294 505560228 982466375 475790556 514981642 568615374 679776748 508358508 134021147 775004518 857328146 685001112 308323885 935886787 669390719 499859583 428737507 113724784 934817105 370008248 779836018 164965804 389697141 597901513 326391331 524427496 904111665 976942513 248442580 178569549 416562330 16379743 910195832 115583284 327489311 911075640 659302802 124241835 378074364 368288405 846621630 421856503 957983176 191685954 647651881 180900620 699033064 676406785 768432660 761255447 113345305 132046085 225495893 255899381 685224682 219427447 608832725 825400761 844521791 726997237 334663443 182562858 937724112 884073998 632928927 886710338 290580903 989763783 855011488 984392368 866226598 906764313 741618511 185280855 677776127 323893616 689721466 393785293 791476410 639566637 944735746 825305565 899430706 984309029 493269597 498481669 352186520 33240353 64565012 865550841 838739311 409616732 491669830 179925278 591418638 588713224 722980 162421008 94013473 420915913 864788851 476806172 142850344 759079736 664211469 148452294 833681143 850219873 519920224 57646917 897304885 414809925 142459117 583852546 655968477 334295129 824058570 362065949 944503487 350972422 950011937 80356584 764834304 432725031 312080559 686196585 129126549 141256078 519101509 331078876 214724045 656526974 76853579 404274479 274959556 275066674 28772152 290343813 900589809 368804437 747899675 345181364 136305817 47020936 400464405 934676423 630271833 476387808 55703005 487338108 804729504 204404326 238512442 509664710 795669042 992943253 363124876 933495372 61196454 965632734 28214340 131604200 55459817 92130087 590042984 802145066 982841273 374614344 486805520 789960147 750039083 150389133 638531563 583403866 365843494 440132919 381851323 889186410 886292966 857096955 50478804 315919458 106441594 239394689 62470561 606751700 185074501 966096358 399692320 334495494 836994688 294423098 659054945 515942516 534583223 678085123 760173834 586753868 957965128 348341945 583479766 712016880 596809191 923517512 823141905 861477496 716094237 840306065 475265054 94867245 379055556 635267304 16534257 179742991 407617677 500736663 661974166 386035792 321261690 808264026 186899112 139209431 346248548 652787938 571263706 334057662 536678006 570918482 711139186 358118613 167955120 937288389 889880009 535344925 598452581 382842822 466618572 511393101 263861437 764434901 953443198 903089999 92971060 911168233 219810164 535653828 827706649 25094889 323488599 472879228 391874832 945224754 902664038 402420992 63932048 158630932 218488305 308485896 305296742 764193621 238613983 49876741 124791088 268265132 951492905 779823768 457216483 809521479 352559452 474170137 693452870 762343238 746417179 808092689 396175477 802208829 622151067 590493120 761293406 220934582 108823334 565849496 331961415 969980333 484819353 162619583 522989382 956821778 610731493 687696529 330745800 395175498 877947793 114930972 209362443 585238959 508444982 978877347 398892195 555420171 770475778 81529116 639377145 22591777 123716406 428312754 862171079 318314532 836359336 948776515 788821405 976965182 462707010 651327714 264854367 345861899 689011329 972254038 97976005 714290459 380260342 560802458 492167386 861081715 143507913 506505819 394924158 127445260 109237041 196447101 549679332 221811539 526512381 842701975 208022036 658330280 812245006 870052466 81543018 475299807 454276058 414634637 207375893 356618690 631723755 711029148 614948249 440135564 1644894 808813061 442518094 299509615 84624229 11983457 205027806 564432144 675518917 24080385 851554763 422085638 92367449 274873191 100929510 214377566 789980813 104981192 370058969 7593754 799609315 996247185 772543135 876783789 994303602 509330399 349965574 336210816 522553698 682314501 802878516 746246769 51497329 193507338 923759391 2203471 91188593 673811752 103426068 115778399 533632711 523134799 329455921 502597594 109069294 846285983 790564586 21940332 750366450 445527793 757506695 865814967 881641974 823269455 972126885 662756814 391280046 237048184 640850353 270729402 741588965 279302237 659290224 47587065 28244473 352128167 339724922 822346746 920823130 647579182 257491130 73028258 900563982 292715395 693501424 835588554 94389552 791101543 536631599 576533182 301449068 807375954 10946655 843979199 450666373 928896237 938048188 679924354 175704272 458693272 406847829 480746160 276317622 553658597 365276558 120600164 963913270 215618843 398956958 776351920 112853600 225947828 811388690 99873304 959569627 523997151 991987528 284808468 206016864 214149118 505642997 347124371 305432892 521845801 750430624 628250227 507313106 991324586 453488164 722228234 333892887 831524991 931154738 438300832 665988116 246898652 899286220 246855666 311695208 579426982 987143115 180042929 972790212 33816568 23861851 334830849 257927789 882781090 830894714 712371450 400358333 647982245 115526780 64564523 912190881 208326584 329748874 922034450 979973148 605697990 919563294 139875749 830993347 603565678 169137288 453848012 603159104 264697986 189063532 567848164 917368528 499078280 631689282 889452349 913622212 896814908 458514901 949192861 470825475 684595724 881323205 212707516 189991815 629484955 542651909 244957638 821888476 682210366 161050973 519712476 200906660 983409282 115208681 294994067 242450965 499006884 593663640 603325299 354142073 424196119 708917933 846849145 912660909 934909442 64821314 379825045 22170786 785111999 163552960 616990253 567780064 670277214 981381993 630318488 841309694 397601312 636793807 365344164 554519851 515406076 244055641 451166993 206114216 753563933 500300485 446931988 830805324 755752289 585181856 33654485 585609471 344398812 104994256 937297905 252505407 542644307 246460171 420581624 560670878 277870274 40428637 887047408 717851201 696577494 791861158 826868432 466721379 385588596 97041178 961943558 778809040 912640816 526822847 178143986 200901482 822570199 858934770 910553449 183182504 802334950 876643810 844620594 709722130 97965328 884426772 320482444 132060358 38222523 262961117 720155815 244182006 862892931 985924075 713817638 501251432 368026550 707707581 769292195 901103604 528263383 961633062 64653355 925534218 98129948 578681550 710160830 460229162 455506672 523603121 623358416 832836969 545238385 424444830 476332491 491085298 321262835 794462905 545310603 325401475 823569531 295761913 915507168 740663788 134730052 605472938 563977488 873303956 811006270 430231533 293429586 329710580 508995466 354218291 292279123 476645913 737511167 465621190 380257973 48574758 710583976 493926977 579161739 630296272 160292932 317639954 424170463 231588832 906823877 826166527 183587885 382002357 675012305 963326110 210933221 99636159 870155076 703549403 666470636 347433477 196539820 722814070 995076379 225495456 97699020 843531394 55331007 379140158 22634777 575356136 860871959 906176928 390351168 988939234 8362202 682464796 560485022 714273664 426795694 882944795 842534342 560402982 566262194 724686236 780621055 26456332 484186613 241710767 701726404 33141437 991484 68196859 128400962 198246808 264484928 126144570 212819421 495163474 592507822 443249591 454742443 485804658 184846373 78997719 951612919 293445844 942669819 221818509 91837376 390238759 16291705 465623779 585022775 974484847 133704026 667743608 998977605 390081155 790607184 372188157 252009730 681585808 196709503 150042295 196648511 753245844 67454976 611181824 253299197 40824804 197594464 967818182 709605364 650954406 746241822 863712779 631367181 163576920 640634160 65534307 246477544 215832647 606138751 7548537 187790423 464569881 816112742 842989962 604562401 722090052 621994807 255455976 822202688 339179668 565054646 69408120 56592611 587494057 445013916 499612469 256081005 364281974 535850261 961635755 734364980 118979268 392143170 718605436 101537987 807828397 666991032 686261215 284090200 539810081 291133440 781654812 710751847 166926180 214471701 894296337 402805013 896818062 887084265 253784752 467611325 840783881 205424351 688932734 515024239 623091991 479514706 766156310 819514476 407285578 466866189 484389540 89013931 338340874 366229970 423619947 399980888 558960659 243762900 554645311 344506959 155838964 386098748 870670860 862984357 449141392 50863527 778004813 520660256 538565537 641354662 317302933 740501690 278666288 36462652 365130250 695659810 992411422 749127012 530402532 88521530 709734303 880091529 19248115 32692634 690898362 362926092 416384023 981105420 879141066 297973186 110065861 738040078 201172480 365002611 949423753 321271379 664047838 309642332 767489406 301119298 638926781 96124078 697080280 310321781 34004552 552572941 671607898 786101564 698286591 938096657 676569312 43766808 739843765 558361288 512820439 624429888 872881427 705066290 920629696 200663839 42386707 929351108 894671281 410279123 988424837 979058406 839074771 634680496 978075533 471728501 964185829 318844091 581171491 577936193 419596215 862321456 95824785 204391312 282570672 401846013 856608505 32420762 182815049 18011716 710583245 33004810 32162960 221011165 523516245 237758595 189712294 906600145 99036717 123295769 287893825 901306080 539367107 717994452 475320107 246633212 151403485 576834097 386505409 309942476 703346450 999553696 561138036 412262954 146731340 725651975 480018252 818624933 196228940 405562685 857602400 949133568 574207014 671544208 255474271 656666033 44683712 276473664 334038794 904256867 598865240 237275649 330455223 394401396 161518587 26064253 391829968 414546040 167748879 557792720 175353426 152338612 26183370 23314954 361911887 754305188 866782392 49368241 223144044 496701045 8093753 107518012 377054819 586449291 118595328 854883737 434613634 85611773 790860181 465643175 712823595 417062932 399785428 383561405 169939282 112437968 796935532 89028386 759245570 827860067 141666913 116890514 34362584 220676531 446805387 966293695 169322374 726893532 704670485 804022990 781174354 417762988 383318270 310886870 446449044 879301926 6974875 503693413 524550971 22541824 523899411 972008442 428891977 477312548 102020322 762869644 648576083 365080882 848580695 90834945 862593026 747334141 210168597 456085688 549890452 106987274 972216470 464718336 673206875 756160276 791114659 629270942 245971517 260026762 552804061 306478923 424493618 257812239 59266872 659638580 331779786 755522042 126630522 148286585 765624996 585416916 290973121 925085102 818723576 810501340 624628218 614636892 615735822 117492870 45018218 78024321 150391237 949366263 381819177 163998476 189271565 29929867 135169442 742925410 145291117 319927376 311208725 927678428 342609790 466794632 546991894 303718214 843218285 910136363 623473675 515904866 279229053 256451426 71433137 127892579 532158083 598092557 539634583 669895283 464804456 836080959 558456737 505715757 397793451 4403644 761896582 363562275 738557404 471654018 372810835 146700377 102115618 736041021 29962983 106476744 795557558 456912593 844013173 256562652 520465510 462861780 429745668 554309111 432738323 45170960 381242354 978944748 894684723 393962246 923719789 322973828 101212752 782158182 451650553 4601596 1098630 870420377 387782125 295311237 430911241 966250295 128051445 132326083 925760669 497255057 848031633 223409487 130041628 472891688 441537173 66680885 482859252 636332595 615409575 963602294 32959654 841891614 788836293 693571719 669533512 260313605 683511740 255430865 939959044 815574589 64132786 821369391 767602583 892967116 453273756 739837811 439897811 632017132 772070600 488797409 292915997 785688204 499036245 687689905 875564015 689490639 630489270 281040785 901767255 291148426 826274356 413182754 768958839 361798346 508930665 146395255 258639619 469436236 501810885 773046937 159242182 533311748 342861580 181406981 952131613 85561495 818123733 695363627 251590778 241404640 718052109 241698289 257235938 930633583 611089010 113302063 93317232 400636677 903985177 698192689 984194000 797037593 741789417 135501368 569171396 66912598 424233246 74811385 574850723 243888155 838691014 905230620 697901013 736262905 522336327 457707198 197719640 284521529 991749847 532058351 188749118 874375252 96848643 46344501 56022573 591191672 510701865 452917512 386427357 345366282 55797245 658431572 306200734 769340446 726265096 698800634 120306895 170019329 955287332 700957262 598078824 205610416 240236801 603572122 204033137 619740510 267499940 212624026 544688008 633411314 36493539 721849087 944031328 888438918 926177258 52750316 355594044 24762601 241828792 800074364 109648248 715585054 208911779 452688954 733247489 70333915 26963920 396901799 594742231 541571595 288278972 224135863 689205394 105565005 315543734 301022548 708847322 678941554 359880290 317956570 882310382 524866562 271426871 994245529 951416094 886563000 455165186 292746071 591550033 805386754 894319457 191975371 193710208 582930818 472297545 897118243 491784505 231165583 885094529 319923839 732247069 348741301 464532517 888999539 268862818 633206832 95163683 146598793 35055697 7021685 804341185 370619325 212189641 523725482 849010965 253550079 692232890 168069161 475756939 149942453 100548267 701753601 863701860 832276534 690651702 227726965 359946545 162596175 544848774 481798011 928835163 66151362 755396831 622167357 308212639 31758019 247943959 50605468 142784906 793252729 579799061 943250856 111183617 493657987 324093785 888244777 401044412 406577008 426940020 621228057 405431494 397653829 654614923 850796840 494185215 524489980 32334296 603503159 223471514 453862143 904395817 259421149 729656991 387625137 724558175 205036773 876177258 983555813 871189745 448133838 334287146 792863333 724545382 817304138 712927075 280983148 886376158 490217919 984716909 299444524 682530698 463098313 754377714 13537866 907470384 385037750 473122676 973719389 187416232 962422280 420481220 513307250 581767777 327268599 630401164 254835851 788052189 334895853 229911239 892509211 317023792 906766088 783527235 984584588 676760965 962293659 770068006 813519289 615342489 479909037 547182182 274427508 97902910 14010488 13279311 237100801 845373914 582966763 825333761 380350105 513701861 304738089 301848560 616788200 539667822 258929160 640871266 439937168 688389271 543023251 806432501 167310244 666782229 930622857 97736982 139615789 804493745 812772571 439624330 345122473 799837385 310725169 378080489 48003719 221295823 901698406 20455198 684442284 897811913 409021192 16499689 77422065 929290959 323290329 770569309 401003426 972859537 477328976 831744098 985479680 656593871 290468121 944079156 827439808 639228382 748468113 622376930 924421003 919742250 170557771 615503824 402195068 343462830 906100109 413824309 616900773 951619453 479057363 424515998 161388682 877354813 550374987 581722217 908299428 646817447 529375320 189196107 194944479 160106249 537466640 579356363 11794972 988348356 813196222 354337988 568338608 865294029 5070432 181027559 740431587 962233136 724849705 570962742 540399730 441920393 956539393 824800906 711013902 555543177 341318400 15353103 202479067 841454455 442297079 375649475 464522226 693792940 596762343 48657402 92531423 384513046 166901639 610421213 466521123 94086070 662611906 187858150 280945331 111606306 380261687 796585829 17496951 216512771 469304504 204555774 459337164 909652888 583047883 560398377 55291395 573117746 631721004 799324337 634320351 512275382 93439561 925649462 324277019 545923102 166370756 809414059 247912930 491117816 917884661 702069464 112474965 659044581 270799974 179679960 32514569 805894427 103441749 600481436 133421190 732389860 967856693 818162023 534201801 819528989 820069165 554762577 752743362 965024952 214012055 708676036 35626455 473242426 377543554 526167554 23901024 743854653 661222961 37583260 544061481 216679663 808324762 725059836 826441971 853645970 992110312 486558685 520764914 420803834 477121018 628301261 422990672 967155474 295448545 877554354 544495017 853585751 496439910 162750274 519213709 524668507 318274945 730955657 63464706 323411780 28052451 726580071 716962303 45630026 836824429 774271248 108612850 172398396 288468919 794555786 261336123 20219900 471342218 77452594 129124783 718511358 793959014 799801911 616648982 324136397 434013949 10077470 502154412 121076103 590293430 721524540 468922788 458702684 988813867 320453951 449889952 674567442 595067563 342086054 920705595 613787012 765441721 276694852 300642175 239093022 691455883 844524481 756631663 656200291 481358988 740171801 891868287 205335656 247777754 254760731 604265238 741575510 164387016 430467050 514947091 185624299 604432477 724679296 848176709 24181497 419952596 756307494 337847794 110660070 594842394 50633726 460442961 33133355 460910419 89534329 553103120 449886165 266273110 221717729 80357070 170757383 737488940 166354896 918756258 751153782 776172437 292318135 430604946 711159532 506587779 34043993 53284125 559686341 970940828 975275597 331010482 290462837 402412476 223709567 952096310 204485375 776768625 208880047 965334146 521947263 818611325 793586416 259568867 144642210 117322840 561063467 162670233 895107881 178344108 549558682 195365976 622514794 528320727 341952333 472176330 416163790 80542060 111475624 370409738 244199508 162333874 629805027 592610090 115626765 241514275 942435465 637129390 107727774 758250991 233983993 998671631 340235457 160444279 642950888 225300538 627593412 521802194 624905949 514265358 782794760 615415115 929050804 527757793 710066563 834741984 37501724 28660988 300131647 243868357 922831641 733064474 323077849 890074847 844757122 124981229 782737410 117077834 433947780 180410521 496842498 515864276 79409693 838084151 571286320 758713727 584550050 654910548 913218939 401345283 532110393 325711727 724621540 165139273 238635104 972522366 894294273 641967857 18814564 224374890 535250556 190769101 862193643 62213774 640554386 251876708 322532715 161690940 641511061 191149936 58480816 946699576 58545258 796057184 682997082 155086139 879122188 707702231 214383452 464232049 173256711 607770923 278235006 264293627 695148798 747246054 375058908 527150190 403108389 822457929 986189414 875084371 196029127 959656388 291414366 563232421 963016641 979039103 127336413 470941782 920547333 144760533 147465805 526998986 741205785 535513043 415651568 412329305 86082453 261661630 777465432 906737618 976113577 554124682 735058413 404024051 310762388 557495395 60943979 844502002 589154862 898212392 962145 639245303 12096351 473297387 689664178 316925087 961860261 474677362 390489880 102837883 803163538 904204985 461668508 821047183 879092812 637617262 466149919 746234835 69474828 725968500 408502997 20088757 290673055 767661409 55034565 367159957 288325608 225866751 530241866 357344584 935196252 300979662 499276181 194849430 773581188 305699713 702323496 540315580 227087743 696183165 671957084 231279851 50099837 102485085 607150300 37584327 215077701 462727024 809855528 764653544 914030000 365467961 257475603 524308316 925156651 259058670 855827270 115016995 352441657 13912058 500237755 840065458 838334447 991315068 995203394 260502385 921499255 2161094 61839359 176161085 962726285 537241566 800337642 655971559 683982853 726644480 739552333 232100274 459045699 483515418 531765834 750691545 879349185 711719758 70469459 581991943 430896525 255887475 164991664 868945373 837823688 603549589 440915196 796543599 659693608 558501233 832685736 672234951 419550070 711474682 349182071 830154337 861227537 861541079 299782144 175503789 113980778 974212066 559447088 246229137 150312326 687256490 121827269 378410980 182076287 209513458 689171412 531674356 106143235 766757936 244151363 980978689 678516691 334199823 878078544 956474047 57907270 4412909 498172680 140358872 60080579 165822301 625759697 674987112 770265674 379209127 164595425 562691199 339405292 479927875 266400708 519995299 187414862 694574434 492471257 623194699 687960107 500013669 372887254 382580581 689224143 765525603 624677184 249812177 804172188 216637608 548238580 14558179 955335561 229401904 604265377 415150053 134305950 538038064 166254923 346882194 480658809 490108814 91219658 383872669 538659020 452090724 855317065 418059816 44241884 976721537 694538695 317159757 888958724 223043559 992524185 359704217 603978800 9734222 20736230 331678092 114207074 749518496 530284586 701699866 865527089 994524795 51104691 199472684 209209669 816503986 538262567 65677344 317851868 571846092 3059452 159255365 949250376 319893636 444414207 480651616 545084015 505516103 958916814 933879851 836042058 743434169 367672158 166856144 791229030 923829552 955524213 717054834 379659878 553910583 936077616 582941604 408700543 298354957 80811647 798955759 22822650 467481380 781343140 781135441 731274165 291877794 2560696 31852985 220519587 923998435 822233894 704624780 321503815 964595189 517017646 119697955 550462525 185010458 629911395 342216779 435076018 765290058 198859054 489849283 262538727 560103342 432606025 484499137 345745585 400081446 517822276 725474158 630518524 304424900 206756099 397582437 964769091 449302095 825239357 382197048 714263066 810158017 255592447 95382251 116449957 824480969 409206056 92484215 667615518 920719178 646372074 441550664 429494098 600344282 753770575 750322624 276423460 931081540 132029874 802685362 698702089 344557830 684129090 250921703 456061067 891497940 86613890 110630812 656495815 834724627 307267020 858519810 927368430 448410719 646106825 57006013 311036103 299536389 119383802 528787046 612088620 617159050 287525683 908378121 264027784 185678370 69923098 803920040 246624096 750396729 363614637 693836214 193320135 86323438 979772345 307165852 73023207 576805523 772683363 326306103 528940927 695122223 670174627 241243736 752655968 947312124 468306628 865233987 379904495 386880233 112551142 927327024 157169063 965448984 83953532 798303694 305378452 90883937 588507343 184675259 671191512 999868110 429095544 184670733 800148777 785074973 312700906 948823500 279048017 270711105 575953126 863090293 383822509 424383969 687445508 471658105 830717359 288192472 936704305 910859707 32040285 974592179 885481515 130384406 380240847 609153846 106667271 908003797 804224692 182150615 866791084 248080441 880083406 407741250 944963926 727093239 37897073 68886739 664200467 938666423 674184968 391084831 976432201 881592470 12641168 308079211 949637166 838489253 851427356 28844339 228330319 669252967 445595727 344920229 549472266 808416343 71042789 731434787 942945555 864431456 290400810 296990917 712326643 615100259 277176961 637003221 27478916 37686965 534104798 819581777 38780022 900366750 899957068 904067948 210762702 635856602 676077417 908487181 371130722 115650076 886200549 244319054 630221406 19074695 470462983 391558654 259452353 351726899 773543976 681982496 210890977 324600238 915354677 682743658 778438115 70553208 674166065 786740679 804278852 569050501 762669745 82238933 654798675 103353535 292125022 990304104 359388852 537712258 289928054 140483589 534199518 883490334 653351756 413496168 401598366 594749529 336428484 790230526 353528978 588293098 133330648 10384235 866385327 720113663 942842389 25011974 948207036 530782904 871843102 397573208 985357524 812696489 259843112 24407969 354125544 556812380 874495101 911859795 381892667 649266381 138599673 210353557 287643108 976576492 361340560 10685633 785786959 577004575 711140550 754066918 161415612 971908541 889773621 527223366 442261183 370470804 499945227 297738457 403289790 743475555 384479625 92210377 795285111 161758817 128547973 14941684 363119223 382970292 992101353 881538414 880575907 621611771 32425265 817320444 289419699 370775749 83204593 868540057 439116722 295120152 654410317 4738293 893313152 844754923 388221312 296776177 19619664 348719019 574233174 200202276 945525802 484021178 237128625 10532441 466743914 262712043 821714695 955618831 721869631 92470792 584917730 175947255 265956909 261746764 655394143 697356410 885184395 505393642 985768624 477702193 966499078 716476036 414350746 627868779 219648028 384805300 967169527 900575146 507672226 579696518 49205046 13119526 84449599 821164796 957859030 25018952 690381295 248361097 207914222 983049520 730628224 36605591 301901992 369687856 318776088 542080001 541980354 215194703 482483885 830101657 719140876 885424840 305137035 969855395 737516012 683810184 153928146 164869208 775965917 527128243 360761334 20234341 6076139 610511903 118158653 178687593 346438200 776308183 841997892 770492538 925046139 755109017 368505723 898710177 708430460 908196441 407326116 557833561 780711065 641792700 277157976 22520852 294602565 181112734 181156482 649096630 816289923 743988108 762642146 853849368 626272111 826923083 505995403 822788998 599818421 309781839 521817957 744776002 917302040 569557572 272113324 606778367 880138221 338737545 520250223 635407718 300306845 767062704 668011794 94849940 305544231 461921024 869161932 289890202 945040795 803501555 187804458 192679420 371841696 380552632 503369866 185233203 465092847 422755762 347705249 950698027 901174741 765470455 568754421 715078341 666731189 682375889 124595300 358677078 173387140 916983617 169886620 457904166 417736011 9807223 78962336 772889587 80298665 97843291 388489289 62105707 902803022 771902728 86312131 741159861 432189313 683142475 594525196 625210857 536268443 53677096 604081784 796179859 31515018 937443414 918412591 926244916 351014991 433521342 479494830 448820929 142703488 315559167 377716546 360154146 937252039 612006381 159729552 174752692 528343393 450114062 545160464 237036488 710865567 798450204 295664781 596590626 766474856 284243333 723749030 684954746 428375477 360706798 10639953 891105534 455586068 400739500 42516819 558758094 884232487 950607177 292798664 923470975 354029858 709263877 643282849 867566233 97707343 524651346 829766945 257430553 23426445 512185687 16974176 960042224 643962317 944473711 662276040 101663361 786544788 259791271 47369627 968057895 841216893 50361667 273460842 255019437 96785844 358945593 652739743 477011412 976773755 142396340 294005237 939803856 994192809 310952850 272852986 481703115 40951333 903200487 819185812 606869601 239530096 956395384 707985017 619511075 680484121 112065857 259788213 342262804 926998342 660112624 63601704 219478575 844336945 690913895 501789189 731109598 534397097 922412862 612245077 84895364 856707981 532784446 611327858 518658805 496344661 551291111 457960332 474175993 857471625 659950571 165989671 740049869 169875783 647649713 60939675 889712033 159828929 291008979 924650387 327601690 360873405 916108960 537578895 562504658 667612179 676468122 22076514 28717011 184251699 823651833 933708724 817125920 324395420 697386791 372797057 341854765 758971494 937046338 551890327 560034657 513924537 374021022 257435164 234106779 38981460 300207936 22293511 732358058 312603399 125657444 229762722 112497108 740939577 703709175 974144271 281350736 744633186 81965597 663848127 959270860 289868946 864873644 645672444 820986343 749240809 568457904 807806560 669743544 346206493 872611301 478453084 192724549 396826359 808461120 77488307 692772109 340361173 121527655 879191292 749488767 958643242 890998068 266201123 972367489 879232762 461252662 622716904 714334442 264680543 167487791 130542174 283865607 489084422 67551383 229250157 455187226 447892402 960350487 503540306 648627414 995780024 188065296 823462426 972016613 810436482 445432850 587454506 881520994 938995725 48438629 713495994 549909855 727184490 569632899 600911189 241085792 169280064 828812955 815402330 952120542 125109320 243804688 335084670 430057926 785606352 241084664 216627784 268081911 361927225 410142622 539657108 423244488 94718329 458746625 339024657 704868223 586726042 488698707 719137731 329136603 948745017 816116858 134215553 767325579 30269192 274056338 578458488 449825204 905277004 15218792 67375270 59003247 182332511 336965633 999418463 803736136 464838703 121816849 921230540 251267264 600856253 542809477 626606951 168800972 937515424 940366842 430019969 482234453 512464768 337046083 245370045 926262198 580521627 264167398 267239314 501206081 597465923 642706079 19906508 251390650 103833693 12319453 558707979 592787418 81575907 572985920 991584578 665317069 425794915 106505761 161865017 2806197 334942847 811815434 169519372 554776101 442572139 998543417 892487339 264473510 113033586 353566242 107920984 208784949 863934834 100974314 212379435 20370627 878922843 816023533 723130769 908258740 358859699 497713464 275423177 405461345 621453333 187112975 154828390 392794774 155666861 846595433 272790736 351110932 738616510 109545071 891900354 275891728 259118620 806805249 320271821 335084722 816176562 618982960 513085396 65460887 335176958 305299653 232558479 23366736 935926672 235038649 202366984 266617313 422569871 483180219 321997344 657496386 458079283 875374253 68922123 206687969 169305164 637011495 552476880 242780191 996883130 672701427 743752394 540018126 3678962 768593807 584593449 880088762 100689792 74845614 919436402 206305821 55140991 123842231 126497787 253181480 218757154 90760517 793522800 570117761 617165103 617817253 466453841 84937407 325926271 216921435 155543665 994403568 691833472 765173661 839507577 111298069 979997619 558056918 950399842 356009632 837930286 594588965 119571199 495992572 128984602 527523291 968607089 595722245 26440502 654212097 27421616 346048908 331603794 513245647 198793737 47950036 722855893 871735862 972891803 922705176 991715640 506440024 813513177 874896899 703126409 149569290 690472203 315022902 129638121 802148697 366825676 921575365 575006222 923273986 762149261 945138874 521862338 416596472 18676241 435509649 320600162 737935329 816415727 927023034 400973919 625986202 171365396 469778971 56918208 657822895 327067454 781203339 559627935 306654691 209622658 606944600 561677992 883698094 816671686 451659202 498454941 937699770 755186759 863800446 311582932 395248742 557646613 773631283 560542903 68629315 533836178 962867712 971418435 67085721 140783607 959847925 655602314 694308067 276049872 688630165 676266289 77638478 938761850 660618074 785551090 359685695 638930860 899507761 137951515 560096458 640441835 115314682 886022926 522709563 919498516 494461961 74409151 67699345 969078486 906396584 541717305 464942334 747939637 363497619 56968985 322548841 671636745 294772602 70244625 920943084 28355197 784254594 595707495 946774357 387387792 102910404 512451955 641504169 500599959 620553677 93572644 914317213 489612985 751198749 98929788 577928220 258535537 74651048 458417423 998811844 949053456 480243032 194709384 406512744 599800377 404799112 732162341 556926351 363878499 335982986 469244214 173817587 444507483 338160675 146283425 355300868 899299263 939768330 919234401 541142371 443057284 567192428 144840451 118208871 751299440 927298923 541095719 814954651 124687264 444890266 241621765 352211518 977644548 523275651 436049637 796366529 432004062 804226337 671991974 91172429 647516999 843713894 91378744 911785787 887059370 981019062 918139426 544888473 433111111 344564074 576790525 446337708 179544753 523249231 946918134 864705896 866907985 25160484 169237584 173745914 33070560 30052383 909637088 791850559 835419121 284498281 311181455 213925194 544763237 381623197 447883996 138238434 497235700 450431565 788943191 756649985 18952363 281730173 184255783 882332758 112706664 106976038 601342597 852833988 348857440 206257589 752346431 185652449 786919834 470892681 623415094 681320056 129458290 699054968 439901920 771454471 430695703 561909322 180807622 412531010 755529228 848188733 131230471 800631694 745716907 754900351 591090132 309821062 813931421 637110711 72894450 802953338 946793827 943762045 204912699 584261867 315829969 258754270 939395869 222043409 840256909 235535065 372021017 948595285 914011284 155743716 930751813 252996823 917249206 986914663 666496459 309884393 484035861 213996863 270217832 551848593 761841578 157433405 678741742 974116875 935735744 814160549 236589506 973644869 652396151 823089328 284956254 677269090 606946626 975620362 431965136 1177912 879033449 72088916 542222137 449702354 950834568 822687907 357022288 23259118 582438926 174060543 766232029 958899327 644536255 326296293 768745534 140542508 788113715 648447942 568609765 785485775 759057493 974429318 749208535 431208184 369271012 691398397 614474286 590856808 29895925 980827001 867575961 692280982 52406127 365077818 605176023 948914733 265109645 481841909 843283776 85705868 954369632 663164754 741274428 69329477 137899339 667513710 716523977 147272094 385651333 329166682 441820665 369485075 408576154 7794330 520646001 200655826 373440491 941450918 310523628 46320701 486107433 768882028 421311670 659042412 37803998 177165772 822632754 828781736 443134180 609076251 233550165 162938865 585465579 886167713 786380584 318780025 588078328 478350363 534340681 297228327 995781856 915749945 193255530 378002197 714527185 486918177 828121041 392872979 221256906 555284202 290676695 157640481 413893406 187530786 804487017 269021689 552950006 365065289 765220234 407985794 334965707 465574740 515763151 603191646 213858544 42986282 841349345 72897629 8051206 731754538 404636927 843138824 135254917 199125924 111494777 131183895 766355770 268880475 506699830 939527419 533729987 706939146 581244463 790559317 735665685 908406491 723710450 62791293 473499127 560765425 474622752 900080380 648879748 114803680 402044911 902365714 727450029 58708015 96436136 647561521 233790389 673615069 120300330 107572095 207615923 204447449 290909029 893870168 874310675 6431369 474568160 753995210 655211797 224482884 943061300 862298392 562905933 659952856 680102799 912535864 679810081 780971013 572419890 335457621 14370894 391279359 841167091 531578189 75521124 84643568 174180540 539173939 3281221 443907955 786107914 345816270 572776618 271601946 278465135 857679897 348156318 294368746 344163344 36623297 726665985 894756826 305350183 432782506 176521222 233782104 901689730 35427179 733772981 960607683 92033794 194373837 681164906 727123953 840431133 238658639 987535444 414850731 529379677 706433189 580904951 387812653 157418207 743437877 125179818 663278503 509917909 611489688 182493978 410368958 513280516 641750559 371466181 928411915 966379079 652147788 592615296 476857243 229098762 828636244 341741810 685778029 897598415 970685092 277595670 474546167 902822061 715409497 544592573 968492194 150941388 110654406 342038794 44128585 381397226 8294130 561933812 886218174 906908121 100305943 171111367 787076421 339025662 471842341 591808675 505397015 162006228 807665468 198168828 402404065 512244071 872164149 209724952 502208322 880783066 418908186 664498324 438936144 398153185 568871594 947939040 845114900 942275655 772484310 721025982 828799241 261282666 249980999 301133511 954605729 358343354 439531733 517875942 546838976 435904574 944546577 200213722 135440191 862296334 447218876 405682617 483085930 246245338 258272590 388206952 858818947 809309025 957668976 773420323 690358333 691076859 75062914 326643195 937168961 903122192 866892566 117856595 12784556 162416031 629704051 850029923 435934607 456694968 478836499 20993461 359762030 449367298 367246373 581258155 667829442 188816438 215612939 644696311 221689207 588792225 865181149 316865056 441159278 124251814 927307493 761507076 902601468 226918714 118611745 384982865 940541546 73650279 775986629 749734154 635162227 915262153 160779702 798666504 319396296 105021204 596840975 562777974 113123983 592512140 919622816 902537300 897153248 41927051 711703658 732008438 779048263 649262590 51374116 28066690 445209413 59424233 422973625 642730357 13422031 29970911 546974152 400533535 532909517 798245770 593449507 787333666 960974492 373134377 843886672 543887095 371775629 413551373 254442763 154711401 409072996 266874395 192126402 832095767 523373273 832627277 231316760 657099766 804434202 507593265 103141730 217812174 994280775 31625832 938196781 734728632 919432693 663684136 150737334 791721894 412893100 73651131 906488176 763164123 994808169 385123070 896327298 585471087 810907933 261519843 270362950 817696972 414530603 387628783 688565452 568013876 572557806 675679676 990140756 287103544 419318321 419045240 845421272 203972930 829795765 881149285 821054848 49295116 361404078 649126743 947040811 140014887 843284806 422268985 266245357 90778486 953704473 822632072 953556363 867189424 526894264 547463382 479025665 536121569 24138278 374660680 925892348 822185961 466027358 401359641 369214561 363730427 772375499 200344341 339116484 858035232 251845581 127349791 914731250 733192882 877969211 615590059 495517287 203689953 602218460 361425476 550025688 654511665 479746541 122659847 938085035 112722682 44500638 978238758 175429754 998910183 524266645 547677543 985612692 424778360 57248873 191784355 119125884 137442432 457413928 131947591 280437096 156285607 195934417 48864214 272499907 126018024 653267675 849208676 325431723 933998868 349541549 270648605 160841076 608594766 114475555 179655868 44989219 16354958 930267664 378065940 534413299 72726558 31347382 782529931 903400916 332108576 730488399 849971866 345795559 568347909 540202376 38672462 610233603 52808727 603184641 809019338 958569523 533639664 208821454 348049603 893390134 670313473 892533497 636760578 869611262 401059340 245130749 304892390 877161009 353833643 525332556 26810079 209168299 429435847 901585355 236554228 426604794 237128481 477488209 865817406 704131809 812138700 769417259 181419115 707241429 476889520 735696027 995824444 598262403 552410633 745597524 35095047 539542088 209629159 395003392 110682165 905636279 403526572 824324794 501272773 625749271 127874193 1219220 20858056 516409059 607733536 868298003 439059939 953125448 831600571 686089134 598674128 44545450 85347604 429625938 532731869 857329439 568762035 594065377 838376811 228566770 827544436 32941230 224903280 515198498 337348102 65124098 806751990 113346272 540109165 617276315 528144537 344610069 224652672 508750888 465557261 284665049 766250347 581788622 703010454 898438397 427125295 988217766 844392079 275485570 945190173 687801148 89130980 81867808 998205023 517168914 775474071 238799040 731039087 894356763 5916478 424414722 82677150 520298304 386644355 737262520 756913295 125455326 937492643 380525417 368897209 748459590 355230448 8704207 16047592 642131772 798532431 635979865 651483580 16876409 772639675 20498858 646847016 324293673 626648512 352679448 835414516 367979374 793143040 35261742 171887420 436596955 876446642 655648554 447974896 326755833 151705886 118973824 781101650 313790149 457820706 388837717 845770618 54108720 326929328 454691844 176734677 354179742 981644621 858142621 490273698 744029800 209519508 20991841 896635764 551170650 542223537 349611591 978672307 104728629 453025511 523019643 148358682 930446126 987784459 905302745 734945850 222208109 902702342 962959222 490360310 570464143 54445142 43572760 869927173 763651365 354555021 292463033 580788340 109542195 576770001 35800584 959152929 289428402 974411099 958096359 74613313 767289102 25328632 460354030 916145626 562684584 959040651 669635303 647080778 794550613 674743945 2260048 668989886 930830813 247288443 728052956 481548476 432616317 690303103 906343666 658714778 202717797 573407944 116772140 639256836 37038651 194990618 16413402 833318778 586601111 152042575 165462141 228488143 322407301 708951764 513909836 283716779 263041542 951674668 732648114 366772234 977264270 539371372 77712589 565109180 391943559 808948925 596793585 1480163 291840973 150025182 573652771 90173815 305351985 143633312 359469471 960628421 240072951 792902504 187077459 456556012 82605655 350386608 141091937 315804511 411457279 886411909 299551905 850953830 256455567 649958410 877536796 256967068 289673243 86043893 404759954 822540146 599093421 95783181 9100533 489347755 655595969 640456114 544289260 782264542 18108616 784941653 325813841 756248312 6275237 949616379 377254579 229977527 29219891 962187966 95327957 657628207 653649084 716124236 520833069 73802313 10881667 964825190 25878118 936235327 891995452 469540962 6923742 830957090 509666447 233103530 356237865 897099860 560747672 180561211 77688972 185032206 714694250 665042471 941843075 80310491 725808263 956357651 438800955 60714011 592138601 492768442 337044760 315410818 897871357 285660008 273872433 696716694 235527203 826095487 373274319 211326004 901990703 901453045 59060466 378625803 27689067 608048852 543110604 653361695 712349587 631594426 755820611 149733960 930295639 709306455 964530547 729693104 210082268 323044337 676871978 22105177 36723516 576295138 422114411 340705429 65130497 815005465 712423404 264681868 79606702 101789845 406836887 130511289 97380662 92741614 925523468 620365677 249077123 411769548 888323870 973268811 895681008 772455533 955581010 17104074 931989199 170130979 140727395 823219383 920091621 818179028 590238400 925906352 843225321 484960889 669760524 936897705 54873608 330138271 990452382 544856427 769513572 999541481 693980415 132446992 167533200 239538315 105821294 85294729 919892758 769421777 911537503 871208216 540154097 418730134 227799543 865287382 118319123 440058573 376648850 92863790 876570592 259849980 692674622 637804384 852750769 523685564 261315389 702896383 468429651 833147706 736793479 834624115 698502021 5491129 829110085 294449016 126940286 326505998 638543191 408570270 505624164 91939107 342598096 857503943 287120853 263950708 947996276 198583211 348079202 597041557 276136769 541959767 591856399 916867754 123113699 864757417 696146645 139775213 260030270 9997526 468017953 273791019 888654312 702305253 614010450 66047559 58496683 906482226 757315646 922224566 390805512 370766316 762029 36701698 290339247 209974166 222661597 13699656 671285513 89937546 935850749 207016377 956432814 567080817 199697074 788778524 72033263 606078156 570571668 37719114 86759245 606819695 206728370 985961137 5983487 535948544 972803594 117336018 605397105 999341180 19566354 117675716 472721343 853785267 736250674 208502190 960646206 360586439 776510535 866512976 631884532 376155825 726487330 140034683 700032795 665956284 363900935 436648084 901711010 720234248 614153519 794430486 973935788 15750152 312728390 939147277 829591054 43302148 666397165 411563931 496505813 484472728 586887737 866374262 747386302 105293619 630762290 400119144 244978365 732848537 393529429 832990414 689458039 503921506 24375315 92933402 571896007 253841017 606708304 38904145 361996349 630228637 771432676 472980878 465357466 186700771 113147933 528615805 16125525 191088946 753126716 320967393 886456345 90715845 566765299 638429710 289649988 174608045 692636653 529504367 884650602 152564557 74401094 1565953 258274257 829562844 178906383 323506390 470820850 707068646 638050508 176931220 96530430 546611916 823344117 368002035 16893015 639257151 124311672 173671491 985136402 865264841 233280309 329426659 373284988 720144708 634548353 335549131 526706578 107222112 145513124 349167619 208479879 285704482 725909595 573194794 952556866 492184927 212745558 515456240 710502877 919717957 913498811 136172188 668104487 127673555 788368801 620926598 989798179 477679196 529920918 16841118 950524807 684651785 304824602 26825956 734503998 869301843 574076450 199395821 660714983 66143116 316234902 808492389 302204499 294419543 741416658 496519047 961857802 301864748 463655977 976858279 482482119 166677974 33432413 545879977 34134776 281844724 71513385 233243782 792536639 441165691 946671287 361847502 171646195 786838322 845076522 960582689 882207904 30230324 11731734 771781301 135989122 460141426 994577155 179211219 995908878 529208879 981746669 428126810 536121962 7785602 716223175 678956347 521554160 239704791 862302195 830581243 778116271 927924590 575632331 952606516 538458346 964043995 212464924 609014548 149567127 80497796 11104678 34934748 823317728 682059558 227931805 514081890 465658278 931294545 501639467 151373967 314234361 230124007 375245035 32080354 645483169 936653985 734606960 241618924 113462936 892002442 286030780 860372178 869520782 573312130 246297289 326757326 877590116 517989308 316834308 931856302 589225905 972543040 90796236 846963028 215166016 236782954 440446456 876503604 983280528 223533161 239987278 618666713 388488787 964638401 924889357 660270944 950709487 506093257 164688484 35399675 265893376 717857326 687114744 926926703 376112340 653622894 142448994 579091350 109568493 320007518 818871983 342643166 149472643 721366949 148447454 46095817 926219776 525262142 661079653 787337579 256425090 873711610 966014381 421554159 870706012 997733372 26318225 278032914 758585493 168571963 975824867 292635814 911096423 217898755 567344616 138607889 12343745 300446836 820979415 352551883 560175814 630352642 998193757 685665508 150932812 961533427 971346715 290811003 781191518 658651620 818699047 322703688 221237691 890627909 190960263 815036691 87383124 410699480 711163833 82740026 295743697 658449974 198190126 770823471 250725645 334058058 257003210 176824056 482276758 931630547 597796966 609294254 769588270 406282726 433155662 91158014 721049676 32917099 769592004 477979307 86498204 559592091 451111803 5392650 812043387 652189576 448134684 183172996 378224764 520930453 30470852 875636247 861104357 766581754 819784324 990864598 749973298 108663617 123620320 296137828 3877777 114551244 477154129 371568765 348886373 888919373 495605187 842921070 371786692 571671627 68446999 228629912 325664249 962834084 278829730 245919729 900979714 198469125 213073325 556545154 658439442 315273844 122059763 255303658 63555601 277332167 239351334 957681881 207021591 510467370 630365289 385246358 86104308 445341085 98163415 320392058 333109164 946973300 559703035 289624947 164251891 948442325 867931990 497852034 519974325 72073533 485373405 584127293 917055377 523872252 586852984 131849038 259433816 960822196 99527300 393533425 943648147 963719134 947367506 618117754 946629883 993704773 115154342 632340173 597946111 542322312 564089912 860017124 87472705 844979356 57989174 545499725 117075225 263374664 704505025 965931689 708743185 900731816 826744939 576455215 711355495 995835563 116212159 134034726 600181902 497079701 24093625 320678254 412851885 483759230 204017738 45841656 720260894 348222160 569138902 891594825 440957680 935775692 233098933 644302076 901164646 760866054 663091125 937347133 381577078 846085349 901650070 277970766 789942859 443410724 178079629 483760133 545495492 295675220 551294146 876123468 307823602 712516952 594151633 724736928 804897950 300295143 580985165 760050067 568549312 759599373 260044601 427476555 43427849 111083690 113382285 849669120 913144666 303525105 534203319 805265537 63223627 589939947 475789847 979769264 80306597 860904178 591285377 20893185 342790888 808664886 305410239 862088448 199064262 936772667 691985677 396993992 779327654 563165529 743981211 19446668 458093090 739111227 777007119 582226449 692755849 993571425 823230976 575831090 985843294 2648478 645525884 973762651 168105431 245928602 722511491 687535375 991149918 683285584 911603337 156604771 415769876 74984849 43457784 354646912 470682185 201631616 448122283 862666532 37640709 539132949 799603061 326836770 198148995 182343834 267946648 839234269 549646512 546320432 77158734 324845777 581254320 179123787 235826756 169528587 194815578 899155250 172187418 349480108 658383543 608955008 357398244 587736937 252163463 507905958 262806700 735450638 632107451 308611686 823312877 559309046 548037628 637771609 192342810 708044437 160889635 936405099 909532181 26230255 909690047 60077402 819818680 297288478 159178130 180574266 767485264 285565903 549739540 615539187 450699036 534525381 313710319 512794305 594367186 413485909 838377857 871852212 364085531 66852841 959264349 590420526 162784018 653354621 345920970 812775527 441928394 650673189 186048578 322833388 945104837 363595909 924096245 551616796 427703677 19543127 853862980 262298282 831308766 959249897 914762310 569997342 630947274 199480220 138809158 490473556 576271252 590012518 440346690 994559483 728611717 851619921 342797166 972517398 27998299 339643130 103313071 787297407 840881605 888604691 99600929 32914015 478229224 897133025 95370386 308833976 148574429 526383038 447119876 487171803 645802800 872609944 112406575 802218738 262901347 262172016 27015420 391150711 659814505 324800477 381370635 490397371 565006635 635368582 587031598 714987872 206159110 276516779 75200492 440193759 100861771 1490333 816972287 638537476 277407934 167054146 742863062 372573549 681592856 92816018 479130132 391454734 220803718 559079708 288532751 889592239 315662887 639489154 918366545 367359596 948831889 691554040 217971995 897656372 844414284 931083721 473333725 334906700 116843093 865766354 577954495 986174665 470833309 497229829 29538076 686079769 173743240 519628264 983826689 317943931 938830959 102115859 338164659 830466434 597932830 184640182 736806950 179323798 471736918 460154896 414551942 401684338 166034252 402989305 63367090 605839783 788884264 36688729 308849596 936640792 806441864 232472238 861247594 287620988 108024058 873361547 186709176 326258656 95228805 512836371 923579988 696362786 38482209 276604802 870328865 369006711 59418170 749572261 57300149 54311397 895252017 767132508 679792346 363116234 210204123 777938719 128197136 814587987 916550656 414817910 479763722 840751110 480436701 955686272 356896813 839801913 736319394 189440621 146279956 79907992 735277813 816445444 22529038 895818403 102521710 226616862 688934046 411454509 686729497 43443753 911047162 917609438 605178103 411330981 736721549 18221490 409386365 918182570 3330422 570043257 873803027 714356833 570391303 613303125 376716950 883466631 874367302 81185854 446867926 627366637 517758575 661878913 396601369 862923258 80236399 144229949 614793878 76282663 499819115 658466277 396443387 638372994 812882231 551694529 583703016 128811564 135563232 816631660 422759282 49467611 156291363 213673559 76425121 920637529 875766515 885182021 338524913 931343362 736023799 730864845 982561493 68899658 907787529 652185308 440084527 278701109 197514680 988263216 238254554 656654301 306168007 405512413 868273441 43466992 76411308 647675340 190120516 68729904 225911826 532816183 153668858 204807409 839261271 104088111 116637418 677971358 556886030 746279446 18005553 679826484 597832831 297429285 912554975 171494596 792537378 748665063 647803001 244021238 681548840 977622716 393598073 777777025 283095794 330694231 720134345 452825780 741527703 576130113 758219084 201661168 101294691 266706004 781661014 400694828 909094482 645251648 243948590 934262640 707080601 319549449 528985491 747743066 652397854 756548743 346393652 101585564 444059131 404986852 422121015 374047867 801894399 894089250 530866611 40368466 587463724 168081811 181874997 499571981 790250810 90160479 896578111 841516975 595567635 835687937 584518596 874185676 61918805 133942218 967130286 342488335 372578515 541159773 80170073 863075510 767223316 625680433 875324181 548661777 637871827 787725075 120088231 119384838 140929149 775081121 193457864 229013648 558177718 240346575 105536421 250001723 807894228 371614310 264319581 734802346 781260386 649586048 407472518 539015442 692934559 213093902 921033129 496752572 39486717 968643922 997317569 361940870 881794722 610017637 489504704 644446307 612453610 497832370 396255499 781866711 69947107 393357177 44475129 818332795 649520335 702451789 808409943 472233599 55186598 983917718 376985831 192049187 583020177 463013392 722966492 104572221 924919664 38322762 727377503 472965302 53875541 41026857 678517006 825262861 345293831 708830562 590112119 662422738 628592512 609673987 181233314 895494444 179444335 244426730 696638852 266141268 38502071 573222476 584357773 474591256 823928302 673038640 303344411 21304921 675478495 180444402 71248388 680250253 474053896 271496128 906758673 195057981 479042333 756815904 909823357 712431240 178998659 440805224 622129018 995759775 204262870 506979397 41695916 66257223 321046627 527315253 647639468 790483802 162303663 130285325 635743110 329950534 203600878 360989043 584857659 361586060 60543372 448279396 230095168 849233730 457884584 988442544 40430077 16332434 179958676 850660729 545150032 282396985 539640919 640353976 985528583 503124744 642343723 256626872 952844393 28593767 386102271 417284761 719565486 516063949 889335797 686454222 129496194 864484169 828394469 101669535 793288582 534407420 595870937 143528 708743887 744674205 366592143 226304344 941124453 344492531 335858682 964875379 203349701 977553503 531070401 663372433 953372000 501671247 926226111 464177053 387544346 766005708 264144001 500966742 896346572 927691245 143159755 658957777 65779650 411072353 521806611 744140277 294402109 758237674 847543045 118790141 649762801 121968092 90607869 581217274 355063689 493859490 335160208 615483983 91824671 149899578 92740867 806623283 212710852 996248244 872730066 423486514 880300030 271045302 641063723 778216108 566124100 651834363 53965168 621210197 982734980 488017103 370269369 643206323 926694302 379348885 13541200 441173156 782755815 534969153 727073331 381748949 143324071 889794015 687574421 35636811 219114395 190623498 916815709 501442782 198775155 88478325 187999141 161767353 465586261 872024166 856652092 833909212 339112280 468370486 641236517 322330778 545243658 48996562 117969942 913242139 294157035 887264573 240716538 806314971 849890800 333838092 242581871 990104873 93806337 106805992 314029385 100985769 843704443 430109968 85988365 846716371 284556206 626576340 414322039 664515954 51409247 218059291 269494260 304090149 526190152 199705054 445205288 638879713 315063700 315422378 178719338 368354157 514916195 929588770 233714499 84479716 604793164 646322811 974126579 181662263 86650582 297147647 914034156 257453481 291611645 482657419 235847253 941784145 885417396 48593936 161996424 760285339 184238173 539504405 458297492 117677767 575317074 319987251 160695739 293385065 539041888 595859352 387498741 346557927 745698887 73156997 172423532 745136894 64230203 70096592 96909566 996327742 382549094 688696675 685249727 286321545 99681636 152510139 478006644 750535064 834571461 461885545 925989400 155200630 980868238 554049173 426499675 717352707 115958456 140703350 932939550 102552178 929794480 889692891 971657976 865073867 737933013 98769573 575196852 666552682 786908926 319288138 345829329 607083390 52383473 19574612 556173056 583319179 848237037 717704416 42445994 568992488 930895393 82312736 992088936 648849986 988868402 262858201 310065801 196710423 269859001 75216870 130620559 774737468 669052611 866835891 671857074 683119448 628561999 111536834 86139995 137919846 748233684 956602666 318483882 921566263 915455928 431032339 5743089 443737070 900334810 931616827 634807095 694476162 136044809 533362292 899851191 223027007 898792330 709939747 220851806 411188037 350793110 737883587 113513296 588692488 127471833 589506912 844313187 393940174 472043509 156805917 793587106 969941556 581446397 935297966 275604939 986322090 258955770 670365918 645219026 750075122 612847465 530981387 379725916 352961189 846883515 44610213 277955653 997918382 949371604 818954930 299076378 784986060 216008333 689453389 383960736 345918740 433811251 378345251 356683851 912730221 444242181 89765620 848063431 891963667 261970873 821205016 694726515 607966741 47057143 625570039 979040481 207448279 962128605 17785744 607777112 853620625 411666041 197056499 11566162 930362829 505046610 478298823 788387326 257189101 695109344 836290501 664543167 598676130 119427855 159387706 389321387 636447094 150257345 116945289 325507084 691178308 446462793 494103975 110402019 247339450 890163696 462863773 741446496 362352862 919900275 908472330 373677419 825327494 493464451 670853535 283781407 405162462 10424132 82323361 116953161 932919270 486246862 925997162 760613869 494152178 32130991 303957479 401952450 304140072 364023400 829738523 53720497 201197061 119496427 325442971 713061977 85993689 542948388 415641105 510605198 117976646 12641133 189234874 343265238 57535429 46124311 266026215 582708715 24338977 873319656 421486208 697144123 851094009 591026840 180729980 772648043 670464578 251543123 506829674 119939536 945263299 150243130 551857131 437934580 511163544 7042529 159618357 674611735 739862192 135426771 602928530 413121707 456491599 28592393 250670303 237276119 110694796 953076855 639656205 267459062 162293716 724726400 298001572 298578453 583746149 54931068 998918971 833136248 611818196 612470841 875898369 615439637 315763080 529560183 763338295 960660503 603007036 187891051 451023284 206175324 130815617 473939261 722819424 426012152 845291065 62526602 948072889 536946864 402392606 177138914 696884561 46157440 834897977 645645643 662135629 935788054 799811691 297672380 287591400 39029076 850019047 254502051 689218798 649504210 831327926 884915552 156043841 232312153 531935282 461939911 251353176 99713641 65647499 68254370 825742523 971251380 874929477 501770541 837078664 224264609 213658296 460196248 478458097 130366154 931065999 532497033 746995644 132191870 699643721 548103831 799214530 839436351 257872827 771462864 366563696 157278021 397590925 436306740 679234377 22246650 313466296 616942391 626558561 480256892 447789326 378324035 83211491 689570847 44679858 766349876 527420557 147414504 537994907 552837594 931052335 74339858 340661270 361850 219888432 412759181 633027137 565057358 849984009 642359418 312457361 511236608 340057287 990507696 89969997 494388531 245874317 303361595 888787984 201723386 852639504 362585815 750854219 520193375 186291993 478210425 94962112 570397406 834219783 444354247 260022536 224068327 955105098 289806235 970936335 430831455 408106729 672536964 364367506 267185183 90832893 122556228 488556200 479074164 860925492 848069971 982363958 302502045 230447951 3231322 235960953 542261329 214044068 529106361 600634497 608272182 869091996 394877443 298482096 741244523 352280374 960095101 443194686 376465407 530977922 439004322 640342968 642041719 838645799 235146913 979647869 738221644 505624287 403145181 819910976 567503978 945445109 213412460 413027465 671721139 757667534 183384217 371429428 576662906 594465117 935281507 797909744 305476361 57450668 556299515 603133888 252139547 661607514 390372170 343635582 114636898 650185240 434845801 884357715 856687362 815309355 950446374 563189313 93046036 632895981 584009606 879576985 315924516 136504908 44341565 487554693 68140724 779679818 381879864 595904127 425028279 440044923 358816020 726600408 756940310 736216714 287442852 262407986 150412079 432003508 352124782 448078342 490981713 742548299 224436782 239775519 465447233 952400948 233443411 714124317 546209207 703252074 522993021 176369396 835002850 835519353 36175621 650265706 161444832 33655555 496112757 450684060 778209095 664721215 969007115 870994297 249231263 189821813 83329851 758641478 485637350 803317379 403649834 737480472 374697994 472744283 954045236 484701533 402051442 818107266 801600358 76426836 685049206 551077267 34072324 168357520 9471202 866932154 391366917 51622777 499116919 325978682 695742098 633308106 80202858 778237927 406463883 588776468 193769700 388697261 729637633 277657914 337835648 876005383 635107773 440538867 712162255 981565832 182270136 83131980 374630615 696879446 629395873 783083043 181492112 933303977 618845018 450822061 265250918 571514961 247460987 990342896 253571770 423558446 170815438 459458378 585792353 407652021 862558417 228734440 172008227 69560178 689644087 423528528 769737533 994977152 648005735 176181976 70225376 582435091 320394236 986260780 547181743 93617390 555467331 784544972 730417477 529111277 354672064 674233227 176289197 181344893 182496425 235624977 381746408 507343647 179378537 169095258 156975467 624795369 83830047 897762869 268046238 457467652 949441052 372018631 706746462 815915055 750701161 127694341 573004667 858945338 95331390 639881533 836307515 771436428 171782796 577324430 498124245 850132894 291414901 777397098 294947831 287017342 351896782 808531483 857612609 270617421 481049764 605887548 702050248 522008513 587003828 285107772 294296980 309951652 513953265 390416607 892216610 624384339 623335681 191233980 439154658 320704831 69813441 492233151 500797626 648728688 30374845 874728361 793461377 170247165 824071608 675856523 601565317 752850069 209003562 405137999 871550726 536430329 24272573 101231663 876528568 745697919 7182800 607734076 63231045 230514065 18942708 86496472 884019913 601603628 83691377 858002236 53339220 529498210 51110594 315951091 479925611 814954200 893757204 433362525 882057352 194157384 809609676 788498477 973600917 289537280 617867262 432211948 381930357 299542882 479924982 347726708 626775164 796684386 344498867 670791285 469325553 146927883 481324647 598115571 94176915 269197306 635520249 338660293 64817169 192309217 305706882 705368856 727845777 525612038 405950931 973645035 548377898 18814145 715431150 232423825 309484393 673977858 98324873 145938994 491340752 481551304 182869135 222322505 341656914 323019947 690738078 417978663 275427033 164958803 349857161 471894639 94566849 983655934 615846103 746491544 662884442 691522302 907149378 515073646 806187113 523542841 202814778 293745810 249224615 701960615 374960736 564687861 503341633 546987736 247933963 967506017 252468566 201519979 22286534 75885296 560988029 62104216 542268880 985985683 693637948 501920935 957477274 158326924 273606546 802585463 78931533 990115572 181041262 197527288 152300097 275248438 144022325 954065841 573414535 132860562 170211136 977408315 621491553 565598363 164804187 613546179 908103364 491666361 192565064 325011852 642043613 815161768 206126138 931924843 221155977 645340663 553125210 189149001 301124059 85390474 680061766 283791781 66209434 602937369 541759373 769273615 78510272 691098799 495781684 881213614 674907388 360465451 60193588 223990971 754831153 862345410 27901177 139515652 926183669 462166395 261535460 376488810 580805139 74234034 730115274 73208931 442385673 930166421 20205684 417125753 338306443 523052458 915060253 80663496 226915070 629836103 435520759 327676036 44678397 834023961 750486438 482773361 174329304 285807774 307328707 6996329 228486928 940989354 194526042 598104794 630740957 745046758 666436460 548115525 367845800 264851276 22569582 506497216 66098321 119255469 666119625 847470709 473465322 667425579 662241112 957276961 298631865 792251839 617348076 574793366 383104570 349088948 609314763 26295097 483061339 635659050 933791533 421034116 282005567 700181652 921142462 715852677 519219388 510164282 197998623 940265822 648100572 57915064 569473125 898910147 34208864 295029373 987665048 943004543 58511416 229887053 18453046 753174255 530865932 650259648 644145581 567712901 806704566 873379264 486719716 385326406 639357382 874349839 336196019 950536013 474515453 964215487 330175078 873832518 312605394 753757624 105794110 498023923 583487728 910153781 253509616 496607403 633627062 930055239 529198116 679259094 213937590 262419025 978714615 558755442 692261686 726986122 485778809 823623569 820123826 777055358 750816304 433904857 186971992 927225741 141113748 689993986 504466826 950268267 122287504 539600476 473765216 559803294 845368584 545151814 672447779 568821508 717832269 475463352 80671187 195783242 379166634 624763578 395634082 834712181 803063771 810217706 223309943 724910429 259402897 532455675 821440108 211424813 715496687 333215536 597914705 635362277 435394064 792888549 544610342 342767064 452579199 247789831 572139429 277905966 357449148 215008918 555306677 694775907 103128766 729808682 781275640 764196294 691631724 628453740 774303038 301203963 170399523 39819160 959140368 172431738 919489075 117208577 194209318 26853389 361678946 231594893 721430513 592612694 880498791 881453109 502547730 719960903 233417072 376735111 466442977 99203752 445681053 361446180 895573223 796824468 550590082 657272130 995238756 106890748 117411241 73802026 623910858 882666018 846323982 259760059 677231935 963757344 786057633 602358758 753843487 349013343 417406919 600896304 426406264 221889824 734333402 882454067 859166605 233283831 265816740 719619868 449707604 795573322 266449896 693252143 289856248 629744086 253524697 342524479 555316567 336508971 506089633 551163702 605586564 747348011 36435164 739560083 429721926 289893263 381434906 898802151 824593560 572109666 152160 121501015 480885799 297664643 635350439 990738461 464898775 168607272 280445532 371060999 972208447 294028886 624658911 700110070 587847208 802914922 715068164 528014689 307299601 675145107 857186965 933544143 154567854 149360981 568788429 918115680 926310245 555459079 178138334 16493893 345770959 880901462 347719532 983419716 948329789 725774528 148037905 844283189 718311473 71819802 86192087 22871175 771443424 546088459 135445185 532746940 359033271 388954254 556663362 791688680 874295763 336447860 857362627 82083638 21409159 273599712 77864226 191621475 655954138 672429513 459734318 196417 579335174 233384059 365033004 101534774 748062714 491050262 778725205 174080698 321695449 863862797 140232789 996486364 469417593 552908457 274697678 328411838 356397797 978567044 808908755 908208917 880786652 879547150 350722669 817270698 357935183 773647372 86994458 716554715 256834791 618717203 959650377 687751962 244735100 402835985 648502239 197049709 302198175 917985989 665676724 519414765 585298449 981373250 271472919 842114375 268456266 369330032 919206470 930737726 433869043 767028875 795353847 486446630 133001068 390024098 92043986 980265323 898091591 472979993 947070965 281062408 915830987 786141224 976330095 584072208 833619570 115382105 84641733 622247977 774005099 278209806 28176751 551146508 488424728 432973560 285877084 453121799 452973201 434525089 129326954 956403835 439668000 789524708 779185903 901054045 888160451 164068975 586476851 423694265 404255918 182775368 578815475 178742059 423936454 964138309 727622112 890277220 397878054 17612690 864780574 596823467 916409502 775768367 584250309 673398361 867064111 298146416 244580964 893872476 415515024 954475643 487552633 68780725 88567980 839194061 841000186 504828154 362958370 600509110 862351055 977458132 863151300 431737304 806490453 444905090 222020376 202350764 891063516 854027861 139736538 273919996 137021226 697889074 710769272 609852010 153391095 75973651 745857941 639806696 750153583 444205446 793653126 854186814 582312115 504366124 336104152 375870088 151572568 259290427 319480520 943712693 522380006 954146045 11991497 815093257 581030746 296191311 699378690 275199387 281855908 566074915 320921549 467839960 741045034 662140926 743552058 919409150 583495491 136589434 61435785 222828450 748366269 843364037 515610036 674785579 170572632 463034401 654873315 509514836 633609289 794294882 384158197 681198254 389937336 287180403 249084158 774126619 483079490 50157777 766164419 418829140 60523895 992410638 736151616 521469541 626862173 139201872 671266082 322214188 410830059 403387087 18482254 801418205 675255951 217869402 737700184 755310976 937022377 218381779 128839181 164142706 869643278 956648366 12121321 186503392 190865797 894019958 816187809 630625103 615001165 5703753 555979163 605268759 858614165 870852951 747943537 885750499 668563971 944521318 783032434 233396018 884875310 251462225 127622945 727681753 629176612 351675780 798959028 635394431 311998693 612529794 498582 721099296 329617637 789884512 231280357 991152011 244942990 64082759 587991797 885551332 66259900 843521269 573174987 690948130 137603391 266854204 300330402 594566802 226790748 793136770 288659306 159246674 873552461 696050240 532871492 904247255 11393724 733042052 394805255 376248936 169799244 202621806 84254910 48304800 678303248 264259510 373470504 924066800 807533842 738483493 209284151 918741018 599337166 235653655 21531793 344057271 854823860 981073152 174207250 20862130 79975849 422412515 511819080 12737227 499709062 658572764 889228278 112927766 810221208 680969112 846219153 739178361 587864350 929470424 558843590 423437105 287305423 699730162 316583666 592025421 335927889 557800016 595489448 562958898 404052163 910308590 65151023 134317845 150477364 760508384 524706306 480001668 830157865 425836234 89250638 384731870 849288219 315530854 423779959 836295894 95772663 731340546 587954067 841316852 714413212 500275455 246025453 582757140 548506720 612554067 286508932 234649828 115414924 315654664 538647945 873505898 544864475 37245627 248130277 599541117 1510399 990493469 381801904 766237511 178899996 609853814 517649595 45398217 84157003 273554205 819323399 627903831 177568793 962811137 528712012 268748056 517082117 346213411 42654835 599102855 705141765 281985561 494266908 424514549 587380737 871800717 34109465 307272708 384963159 563455676 835291121 85621293 441323094 660571128 878542686 146553915 99893443 33761319 188064463 562222030 749867095 304258881 906069991 537968346 946532926 978907349 242881532 417695269 776202905 985573509 234636953 407057356 141139197 637546117 187728380 433123774 28722418 991668256 21192601 516447807 958254198 536790067 340926613 353320039 254314615 36906416 346729035 10724513 608407900 941411357 798106827 463654700 87934333 538878482 943903574 293177501 411918758 342988735 841701091 917671003 878630297 56662371 833479837 824660770 765979784 891110358 364063843 745125249 775390111 23229184 883722567 824044636 438638712 252114015 541423120 428803946 210655140 908065158 539120056 606341560 833859881 855331992 516508654 243092516 935040255 902129361 184810900 703680995 592570258 971920125 815802690 192319227 765831235 935237119 785697729 469061833 160320487 777889612 331562642 708710525 472154950 677797229 747486309 536747930 711451549 75998337 242622882 208922743 416155933 532812472 10421475 144127680 209872746 454206169 824979832 79320053 593613852 154086077 870716385 806745577 969496385 599652817 879261784 552333636 482452953 123248536 109911877 797811714 155784793 44800039 736631751 632231922 875541289 500797608 684296754 20919608 693615398 762197975 926682251 172547788 896235552 495407752 229532430 496813817 262421853 302114335 817445545 468081630 116997652 352666390 519639934 634102768 46899699 45254523 583450981 522203766 79223194 805402991 985130599 35059724 64052510 915617192 555262276 121559841 139745927 162667503 15473134 714452601 720072274 270318499 956613132 991875499 186530287 48405557 496241016 20027811 653164100 774834602 227798209 602368290 374961704 329672988 909355946 840984889 755043049 613225785 462082473 392906706 56964295 953482434 607945833 48040999 433506678 209948942 95927368 683168585 937751200 790426756 680711386 93703834 742814305 228025124 281887076 101554259 487213001 247854847 137824098 411459583 383673694 705619642 278399233 696971518 174063511 564850192 617848229 762414851 176084322 556462157 737565285 457655959 399654558 987460307 961745034 147629971 686882466 498359705 331205140 822878634 134096053 432422311 95347765 815509213 73153683 593940891 862628819 686914564 141518062 187026983 120231434 811653964 734217707 480821904 803347112 586297012 197519777 356414257 93447344 13622415 641431710 509709302 172586712 325978117 998860385 595398369 343676426 979891089 324130785 100220041 949497318 396151684 459772420 651727510 191123263 203254913 66134057 289180742 945573018 42481663 72977055 99982572 656257202 802374858 431840555 764617323 851719926 188117379 260246406 159402431 839447049 865402139 18893277 564167028 667396674 103109468 459614031 969434157 297779754 131700064 139457651 355435295 492607232 328399895 840320975 848674963 917608760 904399046 381938786 566788711 413829879 549661571 971989019 331964558 110185113 68712890 860005983 66454411 980168492 289405611 185465479 282873082 602352370 89788905 608455775 336068104 413887971 90037212 162094761 820610038 178102824 772516416 88550296 316783769 657236641 440736420 731458389 300472541 157327200 886643436 565748350 461896509 722685484 536316368 392899746 141972557 31088383 866260827 11548358 15042353 272249481 522581868 33519075 851328035 980118186 525829176 425534309 749327600 455223036 388024518 792121262 689288571 686829894 270548849 977440401 375358521 866729994 998834282 825606103 464154292 932830456 410004532 63889341 86732809 247861113 608163366 182199668 983186281 738406693 598868205 772742560 385573531 141119053 602082567 83030234 807424121 27994226 8722248 646902830 716650862 248473291 887593817 341961629 235366911 136405700 833021492 922677404 624799551 274591353 449804970 473995924 749848921 787001151 413468637 394245472 295915017 953459740 514375622 949517266 426663203 435080266 981192624 916925486 593363723 698060216 361478331 385429164 899621692 1443721 992831066 157278714 971003586 149818002 169525461 26790329 64198847 583623648 68112328 690997499 330967273 454339376 836377250 247355596 94597130 765071222 267410727 832175270 35685503 879424343 138824687 630497018 534265530 492134318 669794020 638344110 937095105 104440842 168405960 31424666 363702700 314195247 624541357 107338762 536105514 782251409 232012411 69477695 531428605 721467356 986464109 460489454 170532473 773306734 302073236 978694079 421070857 899477723 538682707 19608271 395167914 953202281 975197665 938210862 190297967 737782417 537771466 975424354 231655419 112578692 702870382 220149731 185804554 629468324 584924545 894470045 123734248 275522310 773104521 687843185 553849848 242776055 390785123 253654451 556931886 848398964 741608639 433060013 855552149 711906992 859636639 463562011 415376843 324447890 243882204 441542830 672998528 146938420 279631265 560639625 261995259 91099749 92272366 339738567 268431509 427541800 493715478 855465971 114319419 289165875 932926273 44251022 728788720 707985265 228679659 699190924 52802121 269088129 607061347 306025175 996239087 908764724 922790221 263348939 745471776 55563538 391184417 975930296 830407983 239392726 16155049 537310820 205352960 585385198 298339719 688165254 679312781 953261564 190660525 446728268 593889123 276544087 865063138 623346902 5763877 458056587 297685316 800691896 496484104 478300116 10513601 958833020 688020566 492736679 984086428 804025630 55877099 5666602 477080303 51979918 158329531 180895927 649489699 725565489 629857354 344436061 673651833 337800289 37066034 353961567 700810116 428987880 324119969 14346419 459197357 278153 905904600 941991811 172087726 487815544 694361261 116087984 607661079 445501916 204303882 592938826 923836365 44914516 470365036 672379929 509627526 560557167 46107236 64730647 77531982 909420338 473548569 255234292 448605956 200924567 424417989 775208337 95257309 991154696 190855220 423045 573225185 169609704 803127368 455918747 213469289 754377738 922165367 874293074 340097704 433868088 386665803 432760156 679182622 651738285 789649633 774806303 156303910 267880603 327915883 433404727 314922346 646014631 225862574 64983282 76440169 15409256 575304068 179653842 560984312 688891883 702330972 969109775 624844222 823644722 753070517 644449299 542713014 885935536 827928998 375926012 172194225 972985550 572383065 718315037 914558673 261040746 903000460 426437501 344766736 304590931 760241935 796444502 325983927 144133582 592102728 359770775 966346215 519302676 311746226 483450211 712336659 241246929 978808153 693101456 898985860 235123879 835141983 220183337 834530772 472237481 773004155 155470060 505277043 524129248 894370677 347470029 340560422 276683722 70582443 382491249 989254274 480357078 768105616 955030452 181867637 938761705 91014951 438058788 453691070 331956188 626398604 514301571 270386288 262243323 726254187 149582664 295170931 601823367 141741191 475610911 856188163 573935925 114335029 122171493 344154159 722169774 432883422 193298605 318128219 124611085 392309121 87178045 824553918 154390884 656194350 610787729 433717733 468613687 738841228 458671575 327034414 853225726 69717332 252432754 615146062 487158952 374211795 927098744 978730188 443873555 174533740 116207924 105377155 381324181 871189012 935345316 880619044 176999286 330447060 576886523 218088626 824287347 318872395 662222113 924802052 138481469 1371689 935681070 673857094 205942264 790612661 564063730 709478264 389856957 116929352 675049329 163940334 416133144 115758032 35848031 408951502 258387338 203068494 513522344 124769941 340378632 202361688 978653419 405679506 40861306 709463704 137264889 895175274 343496765 845210443 28556123 501300882 829338530 28616898 295284426 804398808 69262956 310611172 838782133 110228955 950132822 361157290 876182974 968808590 38495115 850440866 930713661 290405561 466043180 278100334 433715899 770496376 327002574 793003586 219903609 822265274 884204537 366533481 323797479 447091907 954648746 172786879 529965869 820839594 379480529 318083128 294131365 728592604 97907412 833828441 852456286 111014551 479331595 44307130 306153883 690835824 427550273 504142474 50689362 510095822 956640569 118383370 784181422 849397612 877622311 321281041 914461326 598127067 607687987 624669830 435438851 395072253 864962298 597547242 783918550 44181387 895855372 460941260 783407871 873733521 89806447 845430354 732739375 522200813 109628954 885316790 897441351 361475027 594182523 141340871 737357279 240033611 610554610 314407012 382754752 589967281 762952276 825620997 236358762 673546549 157747561 798043954 798572431 70535257 152161901 901331721 241942678 129321590 441403539 712211132 977099033 948785719 191690365 607022097 859548007 174649883 551324357 207003616 7672579 52253431 692044408 295517337 24091939 863843954 68462486 45864123 834493233 444411272 549709715 591981406 81741646 908653832 269276121 644678826 406747338 582637078 904762436 130758750 889206957 535294633 176439204 286248010 128563250 136172558 266005567 607492821 947660102 401548643 682012236 248806263 136934157 180840477 56166520 151327040 779596382 218539651 464299621 244716880 315950658 938021936 458802983 614486877 548728953 377101973 896766917 145742896 877977076 814442868 198435262 344476200 324925788 269150054 297835905 443740085 177867658 979561558 851397363 934026206 484532237 13149188 342735853 677471420 454670247 686335620 692570812 950321660 502244048 77923004 453802144 802564449 321794610 336557801 322048589 508925248 901146923 217424666 135356524 472863491 354179662 674901940 290520091 579445671 112743906 266172396 853807977 693804093 688065633 26390096 679988699 51051116 129572091 215776063 22674666 832012013 762253329 560394604 647998595 487669262 547967930 307881567 902273925 744252976 549116481 527250163 305679430 463282761 344862372 236741081 68058895 252801123 374123287 220661780 922103451 625307163 564668287 781532540 552935068 410046243 806194168 329685819 166926390 608431040 876570448 755891794 495010946 557981004 60552585 541655573 428727565 967725237 956234842 5114539 454242902 240311037 518406575 239966095 600714323 546243000 369949733 358073362 667226349 664924049 492962191 107494358 451659391 765605061 118566260 875061588 849810011 256828838 931697550 155982423 753815877 149618457 532807756 323597439 76488694 441885464 176867153 956895680 890325402 306707249 30760435 957939936 560497234 919758598 348791228 922189820 288677811 677304011 307372269 363250435 525179206 365726155 803862774 482532921 807933702 486762724 120591103 492871862 38486501 131930886 881394787 202716901 832433735 734837175 190629167 477046021 248217220 26906002 967618216 271739307 581151594 982240963 496602050 659378750 327645882 103081869 889108393 512462714 320911783 574919876 61632572 145293294 137112410 815878739 579246733 595985534 378325360 68059064 46911842 207315169 818988666 437046403 107167671 540241444 923356284 14112987 507987258 620814629 725704046 161789944 344803534 71013656 668262334 141102762 321614088 983095302 30535372 595016657 987563189 374110537 467761005 308133602 691554642 461862930 681433193 146002537 872251283 782243811 721030397 782627969 163509213 179605781 584803674 265704285 656958155 749386580 315248932 245458371 164954028 350927389 644604915 521194892 424462595 748655943 125144021 109496358 787062534 596889975 326686666 667745042 872581664 23494314 936021063 563786854 674123120 246391471 57408436 37502795 11241800 277691818 744490734 306946688 11240366 193239699 774258117 758119637 172804318 19241397 442945919 28634033 522696645 132235055 155301204 559579533 658572424 459449206 531975920 100386935 905040123 858291665 258611443 317971088 372758315 634090204 475398516 22183566 914912725 512779526 940000378 967661627 322395372 336494867 114913922 300268276 46052887 956774042 18811644 909793322 590009136 868626055 186583246 141958116 441234118 589211035 948806351 842021180 331819676 568189159 824678477 688513758 793705000 918020181 598410120 751180172 138309909 779803423 202054196 235941532 810351041 116375638 239010811 547852920 220173247 623279964 408608505 665873181 84266583 848304234 9052734 976071325 451851009 809705739 384358480 512289181 33929198 917870751 386163622 298211799 144232063 61193433 349473070 53431961 759945675 951216193 394833608 697460549 909843742 218952371 630635464 435303375 305462388 443540447 887569272 977123650 598785794 259015623 631589267 590275131 371547566 647890755 803279564 885741932 568969618 499110528 163296069 426636827 73673341 852093309 35783960 872343712 889325937 201563788 806862546 93280490 399234342 519719639 302818290 611339515 856415878 657164505 901859695 461215079 680745263 551946465 11447855 105023449 122116084 318246291 981429137 24124815 380396892 771048550 337657316 856209369 7476770 531710502 10309357 876058782 283086259 600085363 190314598 557453526 385044659 84413249 846417529 649129233 483359608 518876503 611409481 193700334 377881741 477133520 799483497 636027045 827442993 305471644 853116770 271150462 846887382 931324416 860395570 515320408 647422114 247320338 645927112 835710755 899591665 496219454 258734217 883875942 661754065 860410820 225614030 541851578 342319492 662410807 175563108 393688652 246174210 695585535 122560778 129719647 662606452 431606232 753715190 361822408 102823866 785365585 895870033 977497456 840692710 584587342 900018358 656772566 490991807 908576903 98696887 859673738 160885311 569518855 999103832 493730995 595053333 874171821 897968530 396221578 755781412 357360814 690072785 234019805 85433346 183533329 583097719 261590157 896868218 896796977 607518551 796185872 458721290 244654911 332626490 387841263 511701350 694413246 916986461 464260425 149499635 62078981 223629041 772837711 686880333 877772993 431002266 762165958 136200129 316283504 927238129 145622152 423127764 268629478 761218050 17362179 577675962 663008972 915723983 716941496 855707359 421656604 725466571 999796413 86199650 478639270 384987743 335726396 626209685 537115535 3105896 293007858 377895551 903835853 224635575 985132721 380325722 89246636 908519312 333602782 506444821 16536396 48813867 807906035 381023186 525908256 72801335 842846462 241821545 544819568 845029970 905593632 858032612 736027608 714856082 952352528 335605505 759714759 897681407 843436438 397607347 86333697 202179606 785892112 596493985 812346910 941264712 618929136 231192230 631702280 422265208 140966203 306324815 655938945 542536833 729056523 982768480 152965019 888723630 902002447 474217295 670331453 896796480 734456070 12794824 639182245 378793196 931867464 60240935 483255265 176757338 764214077 889892609 444877652 58851495 321208803 737283227 926766392 69916132 720171084 165584241 894734358 869883796 140951581 30922417 404314191 774554930 662720529 160357565 594251415 487483561 150829172 285121453 356186740 337046234 982714281 347937227 574698691 319197210 8443557 316762645 681826356 774444208 508215153 566411966 256990153 41189211 724659115 813343149 174297435 126240203 130240773 110672124 107010069 582369060 250869189 270573434 469911799 865440894 179972932 722685738 550034260 537311591 110519919 69831618 797870932 524173407 151852617 617883949 691955827 448188250 408504423 138502665 446895616 957950530 392774002 648186410 813591455 109110131 526701481 964605717 20694472 826640445 412668764 932476038 813988933 181500262 728073586 232150250 858128056 173303205 994108900 666427365 557229843 879863336 904408640 991454926 261159965 628343055 987571239 541563182 281810420 161443822 235752911 557060933 812441734 658240079 199032449 597260933 876113430 262606382 116236572 841378325 435898813 56697979 354715792 91351887 424932327 404138396 61618788 519160898 170896082 606065640 35658033 395297328 373799698 389847085 188856101 870147089 249466384 254487082 567536769 300752655 939014278 565163286 668471835 353918728 281218820 129246231 267908061 6219536 981195375 954402508 937087812 87283180 364636797 476844996 423146466 355604119 576143930 449560837 481848796 518352064 749245061 764421766 565675116 729936203 975675539 539065012 804231776 576426700 585326188 680841969 705188505 792278543 726137705 998618640 566002829 587612819 664063676 792093403 875347654 160481545 69585896 657762445 770960225 311208922 758332741 976169817 677382800 220750239 1566334 740493025 627881752 579329447 118977298 854593215 392965844 812622452 622086870 125879551 711825200 371149886 973634673 967325347 66108846 991680878 987679710 671803422 566012005 646341412 816774382 443575770 69479549 37776818 550098371 421358770 770002100 114995487 834205526 592639608 180088796 538780582 367845363 379516016 520605530 856415284 553836984 226286547 156702633 42729709 924788505 895606862 859961045 58084263 892719967 948814464 817088769 165629549 653190436 212971647 616540897 953501181 213070040 815955540 210673216 670990923 635051840 294868090 729219708 212116220 703141361 882552419 383654149 102228972 523359705 694964979 66243042 173719464 404582839 480383747 277302827 765418485 175216798 637253087 765072016 918956103 266651766 83819464 449037264 574858826 10711163 970649203 787961667 516836957 401565116 445285257 32862545 128058386 923364765 898903333 43723769 18183856 498629205 40211033 212672843 882949041 779501937 237563305 569574382 335808324 87285327 141579150 214943643 952796364 513752228 915993332 948166560 86563679 457237239 232628668 203382109 688089671 336496419 36628283 338610378 833429893 469656281 721105593 369499888 343619145 644998684 906961395 192645739 976615291 113706435 252311962 64462319 318204982 294388218 50935762 286322880 699314759 298807489 126427316 511437624 472000178 751294059 595036364 171226437 503925293 526883361 375820699 241779944 803004836 897143901 837808150 814177975 578046131 15116143 509508389 229942363 259199023 976198140 875058725 699396883 937635998 66559353 88485735 316670512 466601146 822950580 533562542 883037591 857521137 53922892 350589877 877297218 742255336 783782196 596723367 773639359 802974196 464688948 342701733 852864943 496392607 539533672 74836548 457131592 924215593 740141247 823514124 608871636 715737348 222175869 687527674 291997488 204040535 116345529 914431742 128343886 570445437 152479968 809327486 723131827 697350019 566046256 732591058 973906937 317507245 663550014 250548678 612122958 163671537 143795569 314684443 735550708 405409146 753829252 162701061 275360447 76812326 802266120 170749614 914887066 793218569 583088351 32938930 707567618 792086248 788637890 488553890 596214921 298157247 531525052 189950849 691641940 923659836 269288365 970389578 421641118 387712321 794194121 338681703 829817395 732927845 343509526 623634235 186196982 901893236 667457009 790937498 507949403 338836203 883866762 303659596 739255277 312716413 796494435 528704397 782747337 599883408 177141461 989130896 932696866 813718721 611016842 574157303 77225659 276522844 239413252 760267357 760398960 922784228 56154133 873635020 89670317 383680913 812094053 445661511 7997429 128813005 187941360 512458050 858631004 893771446 848586117 897415716 432740110 796705184 738524744 253351884 763769030 999407504 608336432 352135945 915632215 811481025 302814858 706138657 527082023 890714659 935988852 234132299 778915759 608051159 668070243 440259893 337504252 397152180 782422429 968863102 221803569 924358854 382848704 774696253 580113411 186917577 899709497 969896824 161787963 461003442 491468750 190196142 561683768 369765671 718580245 902517326 261219690 319268098 475572474 60102461 987695576 502448081 343439933 766835285 264683675 998746201 611230194 741711840 32388961 624458511 865445119 312172833 840832491 919261341 86914977 609357515 54333071 282619491 237209063 620469128 69267126 604732660 639432757 509835379 496599903 854015125 103687619 426557854 425082267 648829889 54023452 207807629 425660175 704308647 182010016 815119545 198582901 594663594 770831106 267158543 869038619 73352416 705929162 673521006 622160994 835685524 492603859 221866285 221457984 511945925 26593230 333362066 910043583 732422052 971050686 639020891 528808571 492908314 1030266 854988857 264136232 94392128 760036399 128241489 523163914 666607844 959942363 173547962 895285884 710225931 985625043 848289537 237761386 157818473 616222014 904009639 620893910 403173355 71783575 626889633 13409878 528927021 195150127 457632472 712782996 189226501 130980520 42090919 343178701 936522230 188895099 538432352 58198611 916248253 399731 175634119 623871243 317890761 994915888 665215637 931540976 234591162 114752933 296279030 751924366 931987689 601386139 124883211 286333575 719296480 690829612 462842729 480368658 867235549 611411272 165865113 935552119 948281172 86393651 312434838 924070548 482487402 709254149 96208466 836218715 416235899 383705129 933880881 963228242 465810580 959757278 305792651 997634577 530339577 76846009 993559599 543097031 709129121 308399393 867537627 176435382 619965877 977630930 547578309 632853683 368832277 555682651 27527701 826628263 589707474 758889376 430888808 441166864 32876469 906321752 52134991 233079424 971036855 199573391 939297486 194622493 377157511 380219686 65032925 255322144 639797511 226890062 255399658 304022870 139795919 681007121 885423190 704783010 684246185 737685193 157184499 767679353 773785875 700057255 14985868 645490788 273862080 321659181 68701534 788235138 728392983 629298868 197954199 146947331 216726451 292882663 745656798 600106414 80108769 29445446 421300426 24484188 283759397 730077093 702025065 12522874 897094325 128574634 628803771 174112139 76489212 850168402 737442613 422121892 309205529 418658924 379356991 829585646 850504029 35371292 271058358 559956008 463562193 696946010 9480299 9152035 622300077 689724785 106717345 554798660 53330402 397124992 737113491 446568709 681846929 39591932 130297068 400482931 128743826 867277356 396816205 803189938 719586031 548462764 582146250 373275253 79609701 513357803 17769837 888717190 936597738 230785708 44470194 970005828 231977761 29531273 999482121 117949216 334953447 961533035 420580440 320010527 428192203 142705427 199635574 234511963 646747277 524760981 156700337 187857794 7666086 317643224 232838985 215593301 131962560 147788567 145037811 236379434 534074 958180450 555313750 248225643 130921381 120537886 311164049 77663253 652036681 508405633 409215923 663140666 118485409 840494359 353029186 126201727 953254874 70131008 895227061 922215583 710083673 348360111 11580410 395890150 74972210 545777900 925302257 301782198 917506225 114230483 532233198 571742981 258809301 904929555 454988603 527218141 401012944 255083953 169872276 942113244 755390088 452626306 845731241 374386610 188034073 384225972 327074719 250529957 860847441 476497733 996082575 531001615 830689075 15816586 148993030 186112223 874017397 171894954 388437124 833520148 485957121 802913569 735211517 481564998 321484152 698460478 101160283 587841565 513799082 399874469 237074937 907799511 924249887 39846861 829685801 756440006 493154961 765031554 435237296 446607312 867705712 971025508 853477445 741649134 171282525 177201767 611294229 294688173 928511919 245707346 693830722 739025584 28215281 977765184 932826463 450510123 265942114 286341153 599480310 833095530 117029747 673118778 277184258 773791560 929617741 451821985 16560757 641942712 493811272 761177538 384347059 846080576 100295541 838775773 660747797 446370169 121292054 345758085 637483368 160357777 638404384 190221602 90818155 258506184 447346112 73348208 273560404 160676342 538159059 445630206 764825164 134981892 890002796 75270832 657378798 400330606 952944722 375131710 729412556 856307144 612777087 885418418 934494954 167848246 835748002 694817518 160572481 987123698 353435294 445594660 593626941 488939977 46491145 312253020 232969792 95793310 383595694 221091825 154322205 874790118 934512907 315166484 316218269 359501355 874776788 858496072 889803262 741391242 659624302 942716132 335856494 477051444 1083508 691265940 582004884 660311024 788427318 853970137 407988232 586468247 562119221 660375428 596264662 866657175 173872041 830572863 657369344 581407857 134852091 889557764 110886905 461788476 363053899 999273891 580346154 653035039 377117419 51019329 635667056 503060698 326093281 228574420 509952156 202207550 31092073 975942312 722999282 410623920 263944049 877402844 13379243 946233259 684826908 235311846 837835635 368940603 337949504 942332171 363308011 339701378 516854503 151411432 56910632 465464886 91661778 705048556 970903602 652791841 342899441 691024347 826834566 875108000 872654572 494810956 255473813 739817509 572041373 652483116 452975683 891944373 596972436 904719930 549653864 428593515 335005842 781105544 289918546 155059955 461658126 226010368 730247745 688143376 529357491 274867421 945680362 483764502 498771936 229459246 151883253 749089136 858644518 866508374 795565951 944103963 86094286 701397391 376284825 507460137 643407697 322973026 749954246 732457792 585167838 305114160 771133313 533617176 268713943 496550573 248309941 685558017 192012628 22388319 346293571 409016410 470637214 258514467 463496064 794225947 336595637 508206249 898366388 33971532 603238347 203478771 526268572 136048268 727819719 772800730 954862568 580049547 18557635 169343369 378608318 187310480 625991567 944061952 420249653 901977331 157664299 461931922 277004763 32457124 890269264 467214439 646252592 348154531 323751400 188664827 865264424 167442821 787357586 207375773 143208109 855446262 808241951 436996337 574623515 248043825 134909464 318359663 289090499 505966218 695226933 362688993 302989160 538239973 857167335 823932649 765502660 521633595 955836111 920373624 162721028 356397084 733285445 203296344 186323016 616285736 501650386 729877412 584415269 861900693 955206070 176782667 262956578 200268204 599648611 137986960 234983998 327215436 919692287 653653388 579272040 838764902 484110054 288816043 57074182 370575743 907541542 446199851 379538031 425032241 408297218 909000096 629303153 367203754 285196912 462874995 720838347 274248747 867673499 31571550 288147380 478108810 394274401 312491249 715979091 771832496 213379541 345156113 38892356 521895964 436117182 250011507 760368665 373915231 807445015 272108069 656429015 317544862 197826957 193234694 602676341 812322067 335855620 453805897 576669792 21566348 229382162 533569782 846351610 263469035 60050563 758776681 951637270 998626212 748827859 589548497 1781630 275937090 437075895 747055026 412377966 125351138 887891348 167454564 254403862 435250358 994141958 281935505 958211611 31761283 996087131 428688571 468340758 537052963 769967894 340016052 866013459 652487428 238119532 317095459 161226260 470495912 304796618 873103878 889184140 276429859 547672653 174283051 749870565 771048096 489956936 748161461 850887162 492355804 475782082 88113309 561960861 776070057 473370357 435982383 539695634 610463341 268631760 825059465 19236498 799744416 293742966 577822239 752793290 152340818 85997245 994658362 681649497 564087714 357880496 699646836 292710997 965867848 278469134 202741309 108719559 960087564 125342920 366522713 139402282 247724876 910682247 24554592 845261552 747478650 969652515 906106941 86894333 317224860 305853741 628880816 936304938 444058059 69283942 627997644 712604867 57132468 564759622 770680441 362467850 583406106 918598262 77348595 362944690 625062994 17334614 497984073 695432292 965827269 315581048 144068063 674102077 632536945 305727779 778329068 979437646 907533417 220107985 217698301 262539803 860462160 53098929 33476976 300232477 100214498 910838053 672700922 624394816 705457516 440948805 173319202 908202853 915187535 638019163 5292995 853942241 412769921 283504485 572693646 828941052 872454667 83701911 195501190 962385012 638237324 409458902 347304578 415513847 170000564 936338237 205245102 711754924 641814986 671113116 539668234 206228907 120808487 835795700 455126505 265212032 851824569 915496444 637904500 129080492 498098305 730922911 854829861 848432420 565580053 858461052 502238796 909316816 580800799 869277285 108068493 827925261 687611867 842612960 300748128 746298412 774748317 775968169 506624400 278339569 854165321 261914158 732566461 493903892 439802585 213155602 706076890 54737091 860876763 352675498 967745711 92203294 683301616 734467459 808883800 466260922 763660111 301325530 916737732 537376031 860006719 704751906 869328183 202650698 929177248 866993282 705797576 665769772 489842531 148762452 793168356 25505576 474833933 469909160 572371145 743490969 322447929 80427710 647975436 164068938 361386259 673414544 607538195 556526588 590062045 395511622 494688924 286906083 169271917 586611391 799695157 122680617 918328237 980822543 763905985 410745706 677414426 82035451 637223673 178241335 472866886 104701311 959329000 668183443 259045207 286713416 262162286 59950969 260429189 60395835 457589951 385896532 178646687 979695596 384074721 724509316 100992647 884537384 493893937 932281824 687956913 445772395 580100319 783492655 183935913 423318634 529954157 305304494 507707786 92753803 994828852 153707917 457955463 364267880 773354462 817928305 197416037 252746320 977381613 79740148 891110399 295068614 939370547 788031009 100553153 253379840 529873752 127825912 207115310 82493801 930107736 158134768 684975195 935046943 604464386 345257840 36007025 263508853 66381178 408616020 917117998 217739123 442856631 406849390 371853669 490947153 996157446 575513859 455193721 888136192 884874885 534374218 377173222 945464225 592283561 218701041 244160953 59552267 378701752 543823255 718684691 514815049 532787792 302167123 393220521 701690906 251513054 199889964 420719431 310497904 103930152 8147102 322917704 761215473 76140996 617253403 386270752 257150841 141951646 880392328 298556115 802431638 866347894 157161404 246915963 371707915 670001247 154129924 661478341 606592077 443428418 899927202 920278900 657846281 525778265 231715913 119558877 311081628 317745588 414214563 977345898 584938137 47088567 351054283 939384855 740619847 176634010 218893011 578242552 502167073 187673832 584150080 295678129 871209300 552471808 872852361 498506492 942847044 426098584 710299803 781340455 88272647 78410293 171404888 856494995 143728104 291677107 961200915 441241910 373751782 91457219 380764437 883825178 667698994 971766376 536196892 201466844 220417460 638814841 254072023 788439086 637284231 383328291 229614955 416875861 232193401 542882916 347647473 540316331 936157068 469829265 625208821 649438494 224693624 521194705 415932408 211210671 906535206 519190175 298811376 524330997 703168310 119743819 129306051 783405207 194379642 105961082 318165455 980842966 327736185 164902562 700081509 121240064 514284781 596532623 378608969 459844094 619138117 722585825 180353076 614241735 362906916 667534475 644549458 367181034 888804064 643775318 865402053 214846729 261518596 698173276 734820384 408982616 445778894 362358413 737781996 25216546 231710897 497204525 450030374 999931716 897099477 396804180 65835455 792498352 65249170 902322797 102113563 211558892 405261561 789589943 476489619 557674897 352158283 655693511 275275763 394987980 742850687 481801988 480515580 432631519 352236736 51853098 539007203 462552481 120680173 927083464 785161680 525525498 313181720 588744130 716060256 673151849 816292104 40531151 394940196 789902718 715795127 788499963 477347360 157938271 51607251 775282727 934893900 135827783 811724865 529324676 425578775 356028163 794992022 164199196 193840863 117192819 633837980 392226633 467596154 870976271 294409684 630640188 897063856 672670047 51662574 431735159 165397694 535992706 400226642 244293971 766813908 256448936 510262170 940367739 62868376 720172696 639490326 540433775 491736226 343929899 46067782 130864899 468484094 410309583 290043748 47373533 693095085 491240709 180992728 221607162 790769955 705909218 798976961 907904809 612572618 924978066 438366835 861900686 274938750 960633041 597610227 541543201 369665040 324646512 125429629 114960429 696644291 894476758 769594623 133774545 246835410 694363004 473607067 895845250 866764264 688134512 921417513 5189511 54684838 700638163 71140786 43278204 496152352 200973659 493133814 763301328 114867040 119743442 945373671 726786886 942268386 715172500 644715308 769290616 217632279 890473237 979750815 192127823 229970658 498963801 135089103 680879500 243243294 483594874 439549311 638314307 216954389 880210214 647438373 463141979 372108298 222726175 36211564 118364175 755006641 994867897 931141042 319660399 800057266 381174623 206035083 470982112 859154217 715401742 26787132 171437464 42387497 373154007 827348801 838149155 750669620 263245922 944382151 752402657 967544004 840698982 456856370 137697669 329519046 643990578 632417177 399389847 164437018 373177640 617181509 826192371 500519700 722163004 747111990 989264200 600761342 709275001 141599646 65392282 673806996 372532348 201723491 357765825 610754438 713286391 253215137 947301352 92837113 955072559 799749414 754908686 486164230 27426943 350191605 256846216 151744570 284784083 282620099 61366653 549463573 399773230 976081533 406100585 634297227 566442020 859486912 464403099 485032326 282793824 741654624 766303926 845236065 505254176 51381730 781180980 451505518 442649780 530540545 269321694 429436786 505194498 95987244 857411669 649198884 967589893 221503238 355051661 943422129 553466185 244580582 24053836 582274363 324892785 134020181 593184432 760416085 15902898 356439186 481367718 981511561 568132181 535425041 3989364 320129234 608518456 466059511 446924592 273015586 688356174 6840736 36870470 92077533 123458331 927660314 657591541 181532252 543231032 659360679 381993939 505251436 385445845 824020799 455855685 228946124 213135154 999211531 674654216 211431346 965762085 943483627 376839339 266784071 93230487 643082225 348752402 816855590 434476551 430038244 215973109 64860129 356251141 911579070 13603166 968675196 529111736 648042287 678685487 807716848 577136217 79339287 323895450 343979690 739048118 743423247 541748903 874443785 634489264 935229665 520584625 121697763 850784189 685164812 422234601 816174080 995159654 501339969 888545746 102824094 506522314 536154856 226815171 470279916 320959002 676902300 530192232 403064207 807194651 307552171 940188225 738096927 224522663 897205399 563815970 915868331 10893612 813742999 559631538 576221233 122367275 728165399 325722348 724243239 656688314 223088179 70065568 655906549 19066883 105176384 813571059 263423352 215737539 671823940 846024155 718454145 4286155 934789241 427845284 983142740 428230275 766478286 105549165 407722794 725972322 241708902 792099244 97343407 647097463 105057302 412545446 877630596 660876515 50326763 604971768 208957118 931554397 431130018 21936913 943993701 712053676 363147567 115977141 968836086 413881137 428168247 275042683 781831906 849689434 348774293 510417488 165099021 495099696 183122648 777487347 433410895 729211594 956317891 727025270 947600630 89837527 993079245 90989763 866590786 823784473 282790559 154854677 974274536 28932068 934461080 651762555 372758672 980423843 303845452 99144792 338938711 925925204 451290625 119309541 801936462 911223559 450808880 156811182 46493433 632571746 273255434 109980945 176688848 57107744 805542385 805604802 224444865 928779917 646481914 109627210 8578732 555251724 208680050 849544835 470301670 433796241 899436630 148190750 94397367 909647400 787049945 841163549 904604380 368102508 520285922 710621017 423553285 232493328 111740299 117763581 120645976 518600794 916370083 489546761 676754668 138521507 50034221 188654800 973051215 376710616 111069663 685174394 840421633 40943100 590457252 562544771 200721911 585046436 652655130 256888890 292827161 7059321 319703317 380529475 611801539 594165178 895500314 96867349 530564680 346729143 350440677 104145533 359748714 369816407 96069604 51713562 988363492 637104531 395601081 931567326 630232800 447187192 149309115 722372499 433005697 752095529 368782198 41667156 580984155 591945819 71327014 18928399 85147894 310765528 457032000 203722762 109496654 784298621 565868266 529200219 548505430 834102075 477686142 859134575 279283568 991959449 141445387 197495428 643850230 747471920 113051860 394312494 478521781 933626670 783386575 566749142 270962797 6598868 669452582 721638710 749795666 546520056 961593018 762847710 104034702 916764804 462752667 330870451 418115260 671728117 450441361 120650602 336165743 417759196 389779094 920357649 535754153 566364257 772017498 355124359 82013540 557652155 48969150 913270015 281625869 148272057 924124761 146357377 704835075 925079100 197195254 703635561 997663005 164681146 779124244 443515878 807758113 349683389 212143973 868714108 771227982 1027938 492969551 69961347 169078739 531682779 864564078 501650853 736806485 635004653 794368016 990942052 274944621 991546483 59216567 94627730 532413992 326408665 795929499 709474518 234801797 554800289 782832422 172884782 478349818 459870946 937531510 602563176 192738032 434572228 460881886 961592487 670863426 209982469 822759781 789016292 689869250 615289463 28006725 722507115 917837493 610703487 691826797 911359066 731782738 71343768 244769536 197271077 568347206 743763662 174335700 660829717 879378226 515717444 432397812 239000772 767578923 912361134 689252638 264040610 319584314 191298775 242529862 984051827 508654810 317542685 373801745 192062927 722416253 782211824 656234843 377750433 553692167 559095894 741714354 403907753 230098001 508660330 425892824 996534266 129494695 776934361 40531268 964552572 294336331 976141667 433492386 172211307 563945968 264020064 918455119 419395030 945816639 981729592 874039262 305934113 734744661 325783018 700951189 453746307 471979843 655124102 572208368 937406345 154270093 617841587 514030365 994455953 710573996 548470570 827819647 575648848 395017868 530888248 89769516 20183629 84164110 882702400 884374895 984877923 642623879 467960631 691692102 112654659 525235264 735240743 727153636 721208815 831138292 79238060 408642352 446568513 979006292 818503290 471417669 767111778 350650502 488758741 379180016 847075923 442556834 609954839 83992629 195520103 620133172 624005933 656759499 191265223 833001661 955594522 771697819 247112429 477329714 711997043 102638405 910341161 111507323 235099362 368589210 468245535 479102197 674390948 627802147 431138887 145411057 784503306 460765081 477179756 316854835 112220668 273010027 147343918 458964339 744465521 572548667 836397440 457019359 305480696 817025633 980219178 580906647 629598514 883437158 243168840 893036592 669285205 44792203 827255241 188212530 298784939 953006144 262756081 628033690 500385553 874209965 697603543 417073753 925690488 707406636 268651496 345871314 853778280 947225292 122888802 317794912 486989176 50164688 176723674 913861070 980658135 963103790 78201270 78961373 568465862 110799377 173024436 937718722 686585628 578361944 96493921 212072101 810073793 481299732 102933923 972889634 184222515 680292878 659935792 620595148 319794436 48429886 916597524 820681893 864007513 185160533 225115183 804890536 530133101 807167028 320699829 238577216 263045644 711855987 239873708 306208462 796352536 648586971 337391473 831536934 874616584 128096492 713790515 372198162 743592036 934755672 573262711 897413838 775189322 888539014 413899922 155892618 248277228 889473808 486452274 540508652 165096720 143194181 694497494 607461003 283632783 12435112 376725841 528670325 659939286 299290991 891561803 154405289 82043240 595085316 495066560 311913886 567183449 212923016 234645375 323735995 211963092 488152139 19050924 333011420 965441687 413453909 576157246 433435860 461693810 124436961 438438530 17553125 670537676 445396700 709164438 646564425 49401118 742868586 34603247 6325677 754594421 164291938 647794387 750027441 170419956 427813581 618295008 827978857 880343120 651927659 812196995 773269471 941096274 928338221 690840450 765240974 174398553 249663420 311041139 795975912 181717461 834646257 462012738 746890450 56579789 706319963 589835695 779251235 181514586 603676348 974650829 425796904 226602794 256958604 704327301 364081443 472197630 54147189 764739601 857023175 677114924 986356693 659602561 540569278 947051805 788389183 373308473 359036451 44708816 959372026 860520049 585498376 247502165 382409088 321473460 680065266 402600787 123695617 36391009 47578968 730073732 67874013 894755629 55044135 584214835 158042670 168789407 539176001 29045189 836333116 66941075 187816953 56736045 776594438 363294392 380219800 245425525 435066304 959323410 304468444 746298428 49860943 391722360 126710900 193023283 296076495 410502423 928264837 706722463 922277646 919728877 425058088 607214554 615711246 239444047 397668841 24429522 107385734 229535075 424463178 584766857 212464994 250573735 426590526 864117907 440255039 795208808 28304302 59402651 148745200 910409036 231795447 397909214 31299068 470547145 267326570 532638894 728471581 711364779 521225419 981435888 72182978 58562194 585692371 450621087 135927694 420977777 565035438 790515271 993193431 410974993 362483070 305163914 741080359 929417356 201404374 864552351 176752575 130456274 403352127 958789838 615803151 589172775 498479286 104798453 99752511 73995171 311843372 378657030 916824234 376563633 196883717 799962246 521232477 959443600 895683994 399053328 738580637 70575829 492624567 142059984 685984862 61496807 328658973 582868489 702553804 716560002 657586433 127525775 887352262 470608181 568670859 237393998 818134110 845412067 507832920 586373057 428204378 295482182 802567929 626861947 426066358 356921703 278393970 895334306 449886496 90104872 26705596 371950447 876396667 767485626 941872195 667302831 401780828 45974823 409069160 693940549 449205648 460624073 347552768 682287013 969579412 905668817 247842771 253630811 860286235 274114753 281346334 699269762 56546956 120948466 507621905 960045902 118867074 477654287 474323538 738389634 907626058 724036248 68728697 463513082 13881448 185651040 483314066 49214243 926980370 86960144 789206430 622283646 415254195 141835938 186018321 395192609 265890410 362420454 677984086 491228981 725184137 500572928 18074694 768515705 727346966 524655592 362252981 361641405 789411405 487060457 796340198 950957672 727731995 763977506 368354065 278658803 627548069 408818184 241115108 911410028 530813375 737094626 977452799 595118580 887533942 943445836 563988599 626780993 829461895 56878772 143936083 854649629 440535525 393194208 481069842 376956133 624588343 534238055 292035108 175605259 807723095 898499891 344344684 248729236 618920660 626280197 464783557 556681626 300155249 576140785 347150457 829490635 81144228 836905437 163234251 353615848 342047512 393056775 729986159 483919175 332635179 811449212 557026317 542389842 973752432 115406754 747181761 451155718 510429999 802842799 139116446 610393973 263543776 722409519 862913318 549819460 795699892 524172162 864885716 176088877 675746572 507316315 231167634 708143999 976506367 405259586 520329539 198469785 192089305 317440019 614212922 670921842 792035222 183795325 789808577 269480468 460116331 306838148 693525140 424740380 158437182 744089856 624618595 437603132 35784233 104310300 212768595 867929274 384553979 247565783 644417406 625505006 325198774 293964422 448781678 295941064 861497362 778090320 920863398 614244167 391144953 305944753 964517401 932111363 282526473 333259512 919186609 377011108 736454677 710091976 497502665 91089768 650626468 427798939 575877044 1524385 946947697 956788794 736808500 495336245 158853609 401133382 426172163 341133340 519885488 564405683 622443086 918277094 959222044 624493895 117492020 961233203 196078008 188970784 674013259 28579128 672875971 669756971 636469276 945555008 588887983 383559086 117246370 175238185 966465442 746582462 228996815 352838371 852163064 821674954 836131080 305502453 220426175 164533518 42960292 374717432 851966265 713795361 374874224 152454425 71110750 959813736 78963245 709323675 639868247 806889632 194557201 575747923 338202884 345395032 560403266 617258282 348264823 6113396 237857630 431826335 98542199 945808556 620011766 438659906 347391486 123590666 552084239 573314362 104748219 999297648 940885663 589678528 239752849 486464016 273049878 170140322 260682006 40613874 221122770 739372481 869669909 178486897 43617705 673332627 161989132 918430142 991903588 346513826 371117743 651237980 411692094 313405706 656628067 870028194 103460713 525172991 675577796 740172860 191111049 665161541 57588255 497322 340375863 338733750 431393785 63839680 783340927 401905600 907587718 754689829 121794658 193229540 424617778 879399892 535933781 414796600 233465884 339305629 237630400 776721126 756221590 427358373 738252160 690576299 19498407 323613153 242484070 753439577 79018633 782291871 272563126 255066197 344169259 122769150 26310825 982114329 610719407 687458674 320936171 415390131 355224557 975815489 393555485 714244165 503976431 71361032 137627988 762571651 353080435 235288374 994437016 924682808 285322860 929887887 621519974 688109761 453614721 981545642 583822383 311369104 549745549 393851764 23384791 550469546 271514397 987236523 168896566 602841386 436634101 252469348 917550235 35095996 611953291 986892678 157874500 431968034 199757194 540479053 547059430 120779187 516874833 651247303 603037739 943328983 868831602 178034522 268474415 283963788 584013619 710273340 697037059 730711268 537731600 465731322 515452459 847630469 738349879 677887218 107768607 910908711 497711882 215066072 53318605 940648730 342498209 66400565 907343637 293658813 630187333 190774755 3747660 596414728 1343222 678965395 272168634 176396291 197608679 611591751 431361052 404221260 78822652 953954520 613871394 588088982 71556947 137604465 671246578 717628964 666009784 546988818 38185635 704261458 242515759 530668302 259115459 605214989 853589614 781384077 545651410 98691157 751717472 507590667 969704389 882099394 17135523 638728663 47832196 30225149 963599371 222677653 797136236 429601090 835726109 758839484 248916941 431708645 20398741 980692505 950455404 551220681 879457504 123551818 801158147 326762218 124162978 836739908 62040509 784690901 626477106 263872974 534236090 114483499 468389913 642567684 252462993 677551650 69300119 558276052 317362377 154081027 216034334 532943748 309127518 933671597 370007253 166428202 483136067 133198865 600661270 779488818 225485786 540870324 412548336 712649693 33934461 844746544 114553765 186998204 3827449 347046834 602677293 887709497 767453454 651135614 762914226 700198158 607463408 356318311 886372882 698176459 482195657 882304343 382612065 248971348 366064437 503910605 11558244 957060193 864432580 779056730 97739286 430087933 973648507 425057315 753927206 519015176 39076179 489925986 435858552 857306549 161202361 144467685 330522528 746543884 653839884 687899533 81420906 568505449 230476835 43458257 804720725 467957499 369432516 443251513 960450066 596206150 854796846 216583907 888882186 857177762 791209360 892325376 943000790 561622969 672694671 15054680 333666756 86073101 521866180 586165442 277829465 970810479 624065596 629689773 855906250 730183305 492342774 27207579 735403393 860921686 524796777 946635936 83595166 745387172 248396539 813016551 571293299 638717081 433678731 332163117 320147975 29506091 218964200 359304260 164683925 9466278 392522327 539713426 742051594 674721067 748326161 387388559 925177226 599416619 551557826 881784138 694987755 236683503 547558412 961813477 874900024 241385748 189623554 718228245 599506223 631428103 890876333 508281507 519910596 81942157 370354314 524057581 206638748 884426814 282532618 585836645 560395923 301986821 705332241 276795409 132750646 733107362 627299960 473166346 865366090 802894120 644216716 287883517 714393411 189951871 26441100 622865325 721110989 406891235 656136750 407985006 630087239 507071587 550027034 125488812 591993411 824149859 484985454 370949474 360541960 379744794 607681336 404437924 368549392 563398165 638579199 27918869 661253514 829194930 784118075 408259697 315512025 35864998 275358168 659962885 863181075 186005368 728412600 687716914 24960898 797661699 481391150 613634285 344498727 876276472 279428227 584427330 507998258 398827609 208577140 648790477 11989643 227951359 759507122 515006271 934392397 570868502 839424865 120173791 493040453 106363548 948192409 828177670 504021623 487010789 438688488 574284706 118431385 816085018 746685902 777708724 959559319 357921205 384867904 619437266 452613133 898258694 171688742 525193125 97972176 45281457 225212382 494143596 622229094 855834670 663103158 842686584 233207944 87016008 102560629 241424814 86250407 290401695 940202451 751919368 719641189 975962406 164108796 750008084 728199960 797850789 359115025 411238515 713443402 2935608 161508774 980959835 578814267 986058190 678123589 839211286 947314781 571634090 946468330 866392193 490698199 750941926 537338502 78616206 215150596 487371499 74887037 145452994 351100401 945657595 710495783 159557047 241776098 637182120 715992658 74084764 856116173 877886553 189292222 91511984 313129437 650649548 473008032 194816202 767464176 613326478 192034080 355138772 688208154 615837829 138588123 525187403 203319840 576958055 10013025 511119041 658677246 752717376 833044664 527928924 247102818 2056688 746883799 773789268 639318062 852117419 933675308 423072376 43987449 233761399 967236631 279195306 251619471 915292337 732226924 747732830 247186029 782732424 378928885 179472927 356436806 357423233 130549486 293206027 454710400 940777457 57662087 789115986 675670968 651220870 303670374 702934714 841562426 380647871 881339682 917428254 82410121 748075887 124219849 283990250 72418525 806181950 354853979 781158305 425431968 181810472 914067532 220458328 995076848 647742716 604035846 158283320 241119777 44859614 737710181 788338687 345224760 246054085 529270585 111551104 404584560 791644157 505290695 807043102 323771577 385940903 575164488 741169749 589440564 520862516 858161001 235976242 378226616 165346030 33224906 16587989 563657297 639629936 173539711 538403830 336184251 926800680 457455250 62051934 141495531 401792220 459332478 406543465 290530439 106560034 647392438 860640907 885846889 179391718 124346396 126645191 861043487 81674472 163483018 160027193 839870574 157825595 753198413 906780046 824063435 519507912 411460260 787177351 119799264 804811721 153178693 250284154 863557645 339212366 912930521 728336849 893066981 733793211 942455164 359545480 376511149 420275016 21764158 232111027 119882720 520385920 76154020 52251382 399899565 82674882 861392935 276033803 436291191 985552323 203663027 183553600 501794900 20017162 364795178 712563958 216337295 780997747 420623839 177392163 566788391 324836781 386583836 151096273 238421837 815460540 378869148 732118429 604478442 490790263 823824657 273372984 606881559 172116747 946250399 310302954 816450978 791425142 663785311 205603850 471991696 958748429 354623709 239253383 192092821 40750326 953988507 460292194 355192478 840312239 965562252 433423921 467637831 119614597 320815257 727906206 13221221 982105886 359472928 719235302 226493310 628067824 57638511 379080795 650964044 992262855 351903053 72354019 872467007 34155331 15856242 991246966 162411767 876815191 692154635 224292515 657714125 383114700 76938551 567216396 43221579 925047996 673458828 769128933 634098351 980839959 914932370 214604409 612979821 236505633 995862854 389888933 270482090 699491826 767554457 87680091 709537473 419902452 962845167 22964257 415464642 611960937 818368673 769085839 854407662 413913059 981290619 867814613 652356925 814296010 693664062 78022194 18189784 658215130 881245727 905797246 93800351 811953570 721099846 572986785 882580899 245072645 930456913 478026009 40364205 335625405 905088462 528143993 246726582 254225363 643133892 608079844 790031469 903754536 997241643 216278166 690843060 64672240 426647151 983451483 630030371 89380402 219103985 463033110 333150852 775318345 326507910 740710716 70738005 877714022 697049846 145103446 914175049 890823947 827480190 306654851 600497863 355619729 636617295 187902451 268623465 955396003 836761612 852260717 949043327 595747009 280122192 768242378 895240586 829580990 805307942 145912183 623749569 147320387 71685519 155809527 653216143 174688586 158427136 840917343 272590355 985786787 286524897 580789209 476921758 964041074 912152079 563716385 311959097 38361007 934876250 46535179 601846812 733295780 729096200 293399547 142766136 414560371 635813456 25409387 142911662 95306126 13409504 962644585 918754134 369278269 281257048 776466710 799708217 99482140 201516749 997876776 682117655 179320985 141756999 697410408 628993762 704693626 98920770 946287669 627017793 323708501 461524273 336169472 917804046 563962903 643036406 54246094 791458521 247192446 834826092 280478649 523527266 565340575 487970782 804651375 292447778 160556640 48200332 599364785 676647363 938234111 857492781 77073110 324456868 509979273 299426664 781309509 517601110 58933348 819592538 387188478 854106657 372583622 613896211 469077778 971467648 677856059 150744088 992259366 5148576 244412195 964121571 332222709 388590566 261447217 213251166 533406155 52493158 456594669 136230252 90088714 270159724 430958387 417829473 121924777 214286327 270741170 341827204 394212272 176002617 126001518 360055188 667552445 223163672 13467199 648308288 457919106 186952112 771226448 558671534 291157572 814468559 544834720 968081653 844924510 38622328 372347012 793385890 720681660 266207329 66283555 941607479 905214305 915120244 905992697 275660711 983745249 437670482 673416788 719554268 48586471 428971211 104692698 590497586 204748464 311331943 352196610 285112569 79558031 714914784 4481942 225389046 745450343 991424166 598855991 553735138 263104308 970154842 905968601 833545450 881934722 463906387 487993154 465328685 363010804 99628572 720194704 35252801 701038271 643970036 771419824 136841135 443696428 234550860 690554087 236743027 714659865 191767885 309460301 783181693 978631545 708102479 729065805 656128818 152537551 50652003 942435879 785954283 342407351 684040651 583325550 902610804 355978078 463373436 33235339 247659151 48204549 430659491 981167672 51124591 93307265 552815133 417185541 544016957 882145726 223758333 627346902 44635031 249383991 130207498 254695778 170161932 887720320 154581310 564767670 275867041 321856189 684224328 346301617 806787151 977852456 401257739 176216710 293653122 861952398 417878557 836735548 730806427 703291091 504816201 617174065 159087215 586567273 341461517 310586003 58549703 879845853 698552093 333822950 791667422 429864011 483996382 554128257 896348390 900240612 403061483 72375312 828491907 251845999 953319828 170008595 897958990 19142854 881762394 835269726 402699603 935794004 121508469 435350679 273287059 382563230 243375950 529008572 341006467 676993207 401541893 860831898 66577291 93546698 126344940 340706902 322096265 67497875 978046473 753933032 554837579 820776678 575517592 86170011 174873880 939645223 792937351 205632399 728380712 390869457 385553657 32639031 858608423 335957488 485946564 532881372 916640438 529317542 333395954 401095703 929172714 190598057 420910660 959502427 449461963 39878083 756527274 752666729 192806359 688724817 263709644 878495961 895759996 188194501 838216324 935842712 22264993 72675621 654302306 396705892 166872094 871670409 921173543 840341330 251028799 789913760 976851018 695594313 460666693 943988012 762210166 428234373 626901733 547430017 506158858 458607892 285800135 383237642 231584151 808812892 693360136 125001924 230885734 734699155 851944120 175238594 474180336 434314054 292721757 123648679 738713956 17548755 240728174 498857519 226353444 328208110 77394137 931061414 80090696 85402144 40614526 906541679 773154585 394549315 317902258 361407102 633854103 997846535 41825469 315563230 889069300 691469425 532534364 522771245 441253911 438871383 872217151 32255259 323541018 554905061 197179788 646260975 919856077 236436250 27389275 443979266 607955248 562316876 914086199 514036033 68354556 910126496 751683491 945161135 576920603 12764819 832579731 314030817 723347500 11730548 279443951 402523008 855090176 991156967 112666132 584242123 139388192 121482339 901879890 407398930 977125700 583963317 943145839 376225596 547996893 745664379 898317858 141174594 40728460 552208042 83523993 186815409 282380457 158184201 740831220 713380908 715839421 222808243 400678087 340255464 492941064 129320857 276284316 49766191 124236284 4376062 111635567 311010781 802593215 818969337 16999984 524007910 856453037 77937910 54918980 457058510 87876564 279529525 565549573 523980591 128374647 824187722 831353149 426124599 416702860 452890523 201558191 778351911 914434366 829063654 249145742 181008341 188019307 329589944 748796164 283723051 486132774 674932982 6989997 580480166 321344822 423690840 124982553 246513623 456140950 851199465 270808653 739673829 916881907 383592585 455731266 442628362 212848689 404695915 102607717 170342162 122962406 652465303 437095190 413624799 470818782 446149481 889083945 553996007 541770645 720476944 606980456 582731956 521015744 386141456 228279310 655383395 388838596 360619968 922450509 182501158 780627773 217538253 498479561 74447554 388062329 879318966 302304795 710437393 693655291 758485581 609826640 928749186 678605560 578693948 943172712 766734740 806255837 206081150 268283351 237413214 553027015 366144481 542807558 668383498 356960777 646964107 700762067 558627158 576876458 227267698 771784461 934512914 135844580 309102818 846849785 1296292 74521254 836425467 192945360 988416391 603567891 130222897 457966142 304475335 485640193 592832714 247037413 192211334 555563899 147252835 59678680 589943419 307786304 209751660 444791328 104945006 758849089 519337895 867579707 263747005 569646887 925630893 909668503 371434203 255905994 837036393 831213852 600043211 535958459 449091995 72873375 279380649 942988219 859593046 192934256 204670241 570010178 903660162 705798349 540286710 413149945 482914907 16968044 259666301 592245824 551516656 651656949 437505311 822331305 24411301 914394502 204430811 326089851 226800305 736708141 809500609 999266352 720445857 736259441 396517240 838446839 392147667 897734090 57812153 224920114 7323644 757621796 827741905 275283193 568510883 14324833 757759267 687707286 881082787 329344980 488925092 678173447 55842733 291599814 871233373 356254592 815129027 230248948 740359405 517647078 802873534 958192399 50474756 271440468 977199306 780520251 423533289 626486170 287836133 130884240 444908789 524018617 574774371 769126812 169114390 541485928 252062573 599552480 683170637 508606354 295835517 936447566 547848752 455966678 689154275 551016402 483950953 432908550 571925059 638228934 421470773 534858664 836752149 82200699 890759653 215578232 103116836 648717751 424971360 482492644 867956752 636568370 153437344 792873870 366181836 220488472 97338160 58565326 781153056 32864906 187895989 280557358 43254567 78022685 505636962 41660908 313057490 204176473 514907778 234744699 930491748 576418875 853321970 217068034 564155125 810143155 591348131 675411931 917578991 517015079 679029021 313401878 743128724 612259054 591986423 930642163 796677493 192077782 160840288 880861292 478438908 904374175 20141721 174424233 618546660 550129278 232309625 843711113 116594875 661414555 23570920 114722848 617769575 177315475 967378532 822867251 902997918 592106998 241092991 80319422 107523692 711001034 131504222 245866094 22312113 692447494 89723707 683239208 175142048 119165208 729424869 496214912 829297986 985524320 256953403 891917635 910294257 283422386 111246005 74483949 408857053 133925848 957860571 193252403 509877386 715130382 470285771 814028923 856206928 524484740 450827447 803717471 53472730 434470368 277793637 732952878 316168104 879477433 331767469 362776939 283533453 488248349 569320703 503705932 733528625 883719692 893029082 917793852 79336848 54610938 410329430 583830617 522173817 666894673 192259739 173279478 596651791 29879277 645346920 762686747 694881868 167149214 833239693 323510272 983045241 472596905 998195569 33251734 341516984 973935432 428175500 608557822 277408378 124201509 456505582 953627407 272287241 253749219 547024311 967873236 716669183 130131861 74320541 163596300 389592781 839998021 832271465 712169897 390896950 53631343 710797178 194013265 841971921 260593539 785865280 104140000 222112650 7192166 403756994 618565348 614668065 725136881 594575897 785318176 32041385 897147505 60897010 411187721 931167755 484047141 296512016 631722572 312876161 352409284 922158024 942507846 557143323 119602164 96760196 687531914 163790397 531071956 311251521 178851167 385669407 762758259 596160272 964017984 118734924 528367446 986125720 902794330 105585699 435360246 540224146 634262289 772079961 498619456 644029516 804460411 935366517 201578259 929032999 206638051 16509779 33306821 882535961 885615431 647723426 574329247 962565420 892686299 272173414 300492892 292069373 746743684 492149366 572196526 970196542 960587870 584144895 300598201 644772916 814434615 162921727 881643158 594850617 647204881 547824843 424705234 384943163 309723300 699058057 703801580 706259516 253849305 102017719 576094426 453033168 183155024 486955426 762961540 556943522 13546971 49281520 538012232 364646383 652409857 890343447 678493045 12092681 699010940 881117155 443711184 26371285 245557947 205839092 844701458 341976909 576280929 135751485 796511079 11583488 829125828 1160070 409328624 835585165 818466927 379813355 393001538 109534507 956085408 837939292 324365797 411697956 564831434 18443035 950579927 831071062 435061781 962598721 66804742 297454769 236811225 235748664 409492953 345922235 309760039 150106946 905083048 69350415 829795392 73092593 362887999 616589529 25152283 882432173 852708192 629290844 330361827 153216562 567854141 720171116 19752055 457199374 431231234 861646324 49823209 662686247 548373833 25245554 824522496 996242740 627539363 867870326 292525750 90119999 12968982 437191975 405176505 645557033 537920666 762618045 565842414 329669670 801757083 119368712 154127594 27336253 222450298 696230376 43764855 459198665 908307980 695925714 873847318 608898299 814160153 963113042 457897079 708346965 518737118 591325571 319681538 344151344 515263372 455598488 395608913 9662263 32529094 788971863 832788403 290677226 104017959 242098841 582573483 297286428 53067194 36695756 196196720 547543414 549855872 530643825 384362859 554386674 648268526 873384094 676688571 721262432 649572204 96366460 819283892 555406564 219113687 20357322 400567899 910409846 564849407 741398872 964921580 195521632 228268842 120059021 665393237 101770436 728581775 765086946 322944696 895726612 828609244 199971941 192286701 657255320 121398449 679742263 857709565 41329131 45756963 580987406 169788328 334962046 695880506 551486644 187976416 930494740 53998195 268873862 111943500 641112132 524741950 440022773 858156742 966797819 860801 485425672 299633117 996289271 178716435 212332249 400108628 268686413 245966402 160060436 499728289 361194979 733831246 395785851 51646319 340324599 660201707 156907364 47134748 910786198 380847043 723749689 895501628 332290598 70475506 250342903 804439572 115463132 402308488 13296560 931190303 333779783 784697355 336580361 480734093 887193539 386317554 837073852 36327871 653550855 318746411 440253207 109636045 301378456 890548373 35371132 889388288 574059859 549895815 149978591 740562776 767478759 461416007 5006923 223796231 844812632 223528852 88886877 433726963 136612990 58349853 719461575 12635192 543448964 852605192 552422095 169083556 762244713 595545452 680210637 513051706 856786818 699604695 610875056 767849903 965131254 631563464 141156474 872685552 750496321 633641526 796903615 902626458 703518897 792001031 70066475 75069569 682854892 696193946 150957305 217299498 371580264 362038078 323244924 106466384 914543602 498373816 839757978 224813154 746731048 286127553 284070731 556489987 180958975 61403782 937252895 286290058 944938045 911246374 249708469 465070464 172052735 95190328 289462597 258247460 591169077 829437506 386626839 989354474 764536609 661410883 967936266 586843639 389190108 894499626 653174542 278590375 966971345 706789980 514379178 460270600 544006720 665507122 693616759 315865948 638294204 124659576 79518370 824185755 698736046 277052400 795751790 278666478 354269392 143521485 26660016 162015285 953066418 701375032 357940561 778218882 967796280 921246415 449186256 696785052 798047513 230282785 932329661 738346877 387034722 585944371 830782271 164315349 303284722 387288318 284694415 310304900 182321659 28156654 295247739 769782819 393674119 232195940 533163748 633404796 109278449 822209590 830101056 89478414 951273064 880554794 211180824 548341898 512527983 948650110 704616587 481212248 790057056 505373539 346200010 410529043 872420580 202072189 324560026 918568969 579314300 363340389 835146709 281444796 223316988 392545831 829234153 976383331 70446346 480213444 834226519 524181098 538896036 519924913 978611509 700026093 167837591 323998295 171737517 870933057 416526600 426641553 901007484 566463340 379318511 607665713 568368500 967177128 676816023 427950458 905901306 28319972 780451616 757628071 782709896 715196483 468571645 620163171 882031404 164078746 539771767 862508624 246189064 323790070 269341991 520097664 452233936 633690900 129553024 341329663 256067663 278638568 563074883 530806855 406657250 14387735 764271112 76095433 582667515 78405244 174993596 921456491 396914079 98033830 128956189 372300037 362405097 850122584 307675968 439489251 533308549 340796681 229166092 362175046 530816053 426495074 784488381 296285155 131653712 342328002 679959137 919858786 640036414 620854973 582017118 752909024 611555069 693819033 837455594 61534061 193798559 949776591 392364178 283995535 761930698 67255440 543227828 247404222 793637942 983177278 983907076 198942950 660685618 398966254 910096395 401898728 825947424 970544621 744044963 341740312 577902837 352835384 216664700 872807872 368301754 270806018 667568027 53223324 852376077 205212210 452142294 434411613 475574433 399286242 140414809 10439462 482418361 176602593 438703139 642048786 736658353 318685234 379033225 836469164 9818741 141562507 700521139 892969845 448825864 805329111 477094939 599458913 101624831 763582900 304090129 748303962 866373379 475718390 828781625 249981372 922623827 690801698 142707466 866733015 505709887 338384116 1516113 86239601 168730030 32288217 59940780 538601281 746007705 984252022 473643792 739166325 381089678 63778847 581430596 223154989 558719022 731529313 32426595 421909245 267393199 625743224 827323998 564527471 625896538 703097561 897773432 790260863 217277454 744175530 590712520 929157405 529640635 773642565 398082746 217269678 915432936 654073273 450843022 313819276 626943534 434413641 248558040 292264577 475519931 194064363 734137086 25804624 684861648 586383817 914315710 37230636 943394371 991997891 577752229 507203135 441325566 871905516 624421016 905333541 608697726 226458633 620665679 483044718 44508245 169668629 828046293 168122655 421034664 893502144 818373386 843528242 373380017 716325099 464223265 313624849 476462654 676345133 332200738 187307295 544846128 153606225 754424169 772298031 525841918 116492758 853131301 414970379 524855087 103764078 955452634 7640814 845571299 310567039 386196959 748915210 622822731 783396517 400433377 101026564 390626093 462273582 766113118 893847923 343824481 494089628 132476203 847976292 260393046 635162407 719319791 297128921 776534669 599972152 182262438 794305861 452951837 203438832 143252510 81871889 458670382 468752031 139691901 734056219 619230078 906907725 184444345 146219058 997953759 373800500 993398046 309143707 159063734 455030083 523298764 864625551 140572030 459052445 605971511 791828666 374489923 37798168 484792229 278340286 86681128 699785663 46352563 194633646 84681441 518195792 639017937 603525011 589782842 42119871 185509313 698699499 121995406 67990193 554244124 372340005 501828688 700993538 201371597 250862374 9259654 303300928 299501971 272546759 779616840 133590573 98763908 536460372 330891846 560919616 412716165 184456974 873770304 406146341 101808850 604787626 667440267 770109241 188971133 18879441 257665683 943547919 762096870 871836574 659130195 904025837 84491848 649417763 519818974 4237647 742873133 908294628 610356698 103359331 807128052 462936409 910003200 137688716 568134994 889304433 414953630 716039648 466454221 55025162 260035348 355319978 193224259 560170618 88186714 248582376 903889250 146288137 222228089 356203469 821725741 736733812 957404941 967957568 697339773 776238188 519879114 168417628 607110526 45739029 995862004 709364462 832116270 363735944 304930277 171091962 973346785 680785233 54817675 461864247 93672383 676310257 245485799 158101390 340266052 386890077 568272527 425565343 766513088 710645629 738695212 894104891 516083925 409741998 21421821 134907883 891611388 895081280 570697811 935703912 997498624 853488889 542048787 396856097 466609024 772175761 504106295 216616888 77634418 256057140 579962445 754881413 375610523 857492227 524791798 619761937 234224151 299180435 644723048 7273885 172874455 74017644 944912109 857400217 658246686 500677003 321944674 198710061 386356228 749706720 132221881 26837171 202874867 707357649 180185975 615740218 948393261 978591413 331079478 16722693 897372995 823025242 994813988 710972938 466801311 475777408 240903555 50994292 468211963 702301788 602253095 527021858 561608168 813515030 725609467 538860069 679684425 213321803 72832636 565461830 883402709 146690443 618996540 128620157 790936 45695964 136324960 549229691 159917170 333000245 315940131 835124513 373909142 537031172 376937041 597701127 644305677 79193513 762152653 592413942 855351857 164319993 354512139 31176302 389445682 121692091 985228438 399322145 576726420 652023854 304891019 984736630 106802607 173627266 454024221 709690887 594118446 375063642 197756175 6028835 776874641 849335632 61402173 450996557 482571435 974516081 467764755 998933179 842947876 900069053 271065364 976239575 606255351 964264616 257545812 366478530 621328117 248853148 361824255 820400844 97145921 770947701 676387280 394386685 195101395 854512387 993349530 693465232 354497013 362379916 287989699 634598770 852462281 817212743 231338948 714490055 825555136 9217505 483867818 817672038 544263716 967928828 906340248 980955736 699929231 809611947 399600195 402594141 400388466 543093496 855729524 317589350 957490320 840959583 82609546 270308636 610621568 404095312 615182069 738202456 73489198 450111920 902536892 40400297 756587610 964464984 457091320 205298897 824398359 203872917 308162903 971869512 986023245 993699495 876205978 781421496 285426744 267838530 660729879 778320255 539570920 924238351 362082359 524671792 399061439 88849708 886992121 967790354 136730614 603357096 138899822 189852063 891035672 907754760 245205819 540385799 964096132 736284869 790295834 358530218 358055919 577343692 166501721 165554594 662820832 927934460 960756313 990455095 291368755 130191019 576586512 729133160 524237975 408377122 690860424 187173225 330817808 619471388 854261085 809447967 32383605 577521483 933753923 923434150 827401715 743493587 477988478 855113676 329617032 191412941 619736937 458907539 251849096 506419142 363624944 261059506 239124252 253578557 191141653 382856725 759811262 333139240 473342062 728841561 90268095 675193200 993967781 930751313 844684738 454484592 23327735 52658564 369547582 942842234 663584438 845150636 880070143 985260882 612096967 822570040 275311525 771178161 493570341 246615755 704037923 72330947 499977820 744636603 740721729 85306793 710136078 97280402 14068763 871410424 252530546 976977809 66375585 84523065 579173584 308873256 104159509 200197991 289114630 478559871 266690959 873556340 650709510 497544177 32030588 986513604 798520918 425920651 41617691 996235695 991873422 119993233 845567231 3227395 322143197 332780538 332203664 972389505 392583045 695894255 477962377 669734236 108993371 645448784 767201147 857721533 9092936 683292975 113918537 190866497 674970314 661981778 377457323 630116985 430227827 528470709 624057771 578016616 994005353 368133638 309165098 925576969 438908389 508167976 536034140 125241799 380467636 199230128 178178376 256847107 690899385 339138923 374831945 481701266 531741545 795574486 456311439 669092412 614133069 265702820 33551007 176115262 581870468 416728124 63283663 359799241 693298238 315840313 660980683 358556801 711381570 328421352 529353747 52718590 419834217 643215053 968623226 435127886 233207584 455648286 602199464 202914929 600196330 657987142 699539865 335492316 288248540 750381156 627204125 217737207 645701152 223269066 282803542 795355807 868294002 982042494 938426428 639996068 257532838 690886844 475915548 587023180 854870048 471473009 397144597 625513423 178420570 457337282 31907738 156325848 545853281 718780291 506283763 793883146 599299673 662354625 209437883 213084793 317745909 441287225 163808611 163661101 315820287 324393950 109610926 754222243 745711062 534786391 900368179 100461131 439923947 612616830 850640607 737343243 877464131 495407586 441341808 321800122 443790072 960020294 913278459 971884966 519445944 101234208 160443494 367143183 204299076 983642139 826018286 511045033 391929074 650235285 240045475 944880926 534246700 780916257 85824231 754241930 583073775 813083911 146667507 594196989 897076045 417748927 314952786 191111933 443895275 10845306 341614948 653567233 953774468 610668697 876835549 894635255 78773604 537898803 978042691 341118654 906555629 677705108 589729395 824288685 869053974 926730680 575843356 433626891 112891878 243067604 314884162 859685012 257558782 383240654 340045757 791078139 867971597 903721920 922367159 697011810 509069913 797349497 199713074 904431331 95762493 771076347 257300864 770976523 612843941 167207422 364075209 249833049 895576211 332715628 978161032 148057028 772239774 814910435 206537230 452458034 888904302 15587126 322551550 946373378 469158465 667428588 443861455 593998467 109719145 94140864 308733262 564504698 666485452 204205343 691680793 617266848 804857443 7266221 895628068 81141026 696662459 663581120 26228792 590964000 71448951 793185251 529741423 920493358 451061963 499715413 758467258 21904853 393383939 780305032 509839963 369522707 470743802 62368162 384628075 786721239 604611491 391694079 853899093 997609606 450838148 671083948 842528601 196934009 270115126 352434670 385705738 962120828 222188775 386990010 137712337 333741137 398322391 800522042 612658279 419551531 213638366 735979342 164150111 195652916 954882021 824307720 8482202 577357575 33461352 679577391 415664592 575668790 501899003 98340029 794554382 372947397 236590786 498216289 559894578 783873197 343689207 243027710 628078193 983829594 959827559 661169450 594093010 742899502 376614389 568816560 777689265 716700412 353098518 237291278 757389629 937902989 947506004 874606840 49509881 857900318 990901708 230845139 999265343 556840672 113789871 659221563 895995064 459039607 165779140 163087229 393651685 859845500 590857188 492743197 907323546 816191483 413999485 168440658 264995453 717252342 996082704 175620741 737737355 162704351 115307188 576464854 728744852 345406498 909482384 935820951 812694714 758541209 480769124 393678799 732552694 463698710 67837697 951150264 750860947 615406301 202347980 260821825 709212081 203486502 983588928 338567308 961281219 805851807 976073065 902214513 901744657 527166185 864245865 370942714 86424887 731811095 634336502 554818789 240222628 997268530 322450394 383660581 250382620 338408887 97679218 610299233 757823031 183793174 267677744 83316596 449393888 10358581 93096217 99896299 901501654 50717420 337424456 813410698 26797614 243744647 773910377 802552519 779548623 419481159 33811519 674564685 15800308 368333281 251509022 875462523 281154222 798550269 608901489 799597283 678119008 851275448 995629621 459113675 873406529 530748707 145449596 354655663 264139997 625164225 803458540 217395901 554088597 244343821 53863230 94024791 695945754 55395314 74577087 398640277 993499382 728900177 214563025 30656 911415299 38881662 585549931 739760344 377960433 84812739 76279189 682903056 831691717 684264924 380954094 113554252 79580500 937303418 13016870 279615658 515140044 123533248 378415492 220872438 568804908 815076297 427080800 512393268 350129095 514704672 589142698 463930394 332458182 703448646 918349666 946009235 449351842 490518319 650053661 715549245 439484078 945693637 44579719 645676780 198940299 635830884 279155675 378800677 789464241 371012700 223392621 51105188 824984301 803062899 77282593 967964630 772597981 946122080 277245168 418267743 692714102 394025041 890453610 502847638 423807103 706860902 75013423 986115076 56619283 237599795 680502133 41648361 136523811 524383298 761832070 729881271 532053490 32827791 38404926 229565589 290579351 742865162 497858193 466226653 62949758 897383193 646192131 478164638 249615847 119152147 400951342 932630554 672146278 897596614 873701696 877755721 173167969 81697521 86381946 694881621 522800789 799904715 476789682 988101660 388934546 651231866 269870033 467689649 117620026 480312477 855632726 788071388 233523526 8880835 957227474 648039573 235178689 966287090 750862186 42529420 962234507 629044513 701081432 922934948 419510231 861331389 227537002 105249140 253829293 763303464 233706370 157234629 915704937 264348469 53384724 834974999 483332666 98036142 35389099 923137051 170815396 198267598 371025764 826571578 30266110 516968647 998230129 352739597 15737845 332556094 720902295 330379490 56916999 244470730 170821552 387172670 472638217 807372920 286007082 691165270 26439586 568053834 200465543 315588244 793490893 633071027 538650587 747218200 985324891 371933981 531295313 557534772 714969199 240214371 38351014 474461167 728786432 854227543 476025260 690802819 814272602 217793341 26884297 534274272 601845149 177893710 529103477 200424231 962561085 163462199 864545984 629339951 73623424 57090199 640091081 908381955 639458307 680737924 554140744 499165025 418528310 809403911 857218053 876119613 230048987 421376923 204831838 306832700 38961547 759637682 339844293 584526906 587857713 839092784 668809536 81708484 967206540 611474158 360389864 137681823 742987954 871280696 550598762 350211391 468869000 54143567 494801545 32309840 824394314 356855016 979239578 603692337 500386313 265605548 335921926 629105524 362902568 611722934 316666315 986196576 773038303 700495128 894451452 513276271 405195192 440318294 680293181 244379856 963234837 446529001 928478791 934948838 522530216 457579453 896336234 430190023 777561848 878665907 476849158 916051389 726814179 688258592 900810257 47264201 177027094 193316172 823789204 887093019 885772183 418868724 103457326 105777819 877546300 180105417 128768911 486529892 791160113 92299247 574889982 235850051 4476278 644430719 227417044 873377596 43001951 76688389 428487935 975315973 675066642 266187010 628094336 532208778 599792140 806628715 81361901 883383399 348979101 706185256 177070576 407814257 165796455 376565910 278149317 161467694 128067043 624248582 823962560 815352663 242177756 285424443 185916101 20263517 83023857 486166256 465073358 599628514 496954391 456003152 215858281 494547772 462380310 558650492 291151927 496679925 86204423 776551433 760460655 314436173 340195804 44522879 603037784 512091318 919554520 702034395 397871314 765402967 736018451 699416845 48998606 272843915 110995959 364961403 123318993 35207007 554350790 654420349 624152182 925141015 471880209 234968031 509764329 874860713 464561730 650996834 734355820 969537856 766491923 736623930 552544213 92605114 859992597 132085393 196143374 354177835 526799659 520600323 253843348 162663000 63005964 598800928 988825081 922848317 491457476 992601838 568310115 930519432 373879603 910731364 990956042 366588443 101400460 134733808 996115389 603729805 407185880 256814578 916809822 850877354 467807857 28509247 422176866 393224943 786620807 202151071 22825810 774503695 450253214 476298574 210068556 289080688 233632270 670558079 318805122 354832303 178587522 567605204 190008250 870541848 932523642 29337832 380761804 55109166 310461385 201624517 170390568 373945641 158561559 523804782 354092621 205351539 471624031 882786903 2473555 81015338 443753842 540200167 129493090 393160098 289634931 222858237 290740792 994478560 984528474 393768040 513760168 207083551 362952817 788379246 549588757 188574287 225472473 229075014 831389179 731128721 955977222 128044702 945556839 107533500 476468031 775774997 824562810 503207644 119352095 153005250 366384873 496958381 599194391 453778603 181111168 464150564 550651113 79494223 217944218 415028967 121395502 166988317 1863851 71356112 186708946 447537658 808437943 623735661 810363027 587195840 864728280 804840323 202188165 19603385 157207739 199324551 845888912 822592296 812328995 50848803 133541616 686982848 549091173 811009719 777511861 650301739 714446827 223173078 739695169 195293060 518642866 49759685 228836301 303792093 659579595 632230655 167092963 89884090 835828701 690997427 927244261 141036180 840151713 520352068 966814597 47139928 110610277 680073928 390554955 956474341 530229386 610302858 598302739 230185874 43902214 93399177 27047052 798358949 257517795 201644534 18356666 766319324 102606782 535447994 552525684 916839656 814305097 326500333 822379750 291963118 667296713 282919776 146717969 556132868 509503128 745301013 880324422 83686842 381429924 727266753 700133807 597579918 488444142 776444497 772529094 781966454 715134733 682404961 853229276 104081243 106492840 585027014 686480019 685382040 850263296 751746054 23591780 197839487 685082979 361407707 756105499 959686868 978079674 98431156 384462166 459591504 256917500 901791540 972827657 144994079 477256632 521837489 897541116 680783458 55576208 55350198 338174283 769806510 300037304 424979329 731283942 952279948 485812091 41471622 218119183 428022519 739887542 581011946 980498654 966869473 225845339 170060552 272479936 293336750 110958832 951103472 394490868 752366006 78938126 180250595 383565581 788764104 733845986 398618585 335969139 34918050 933872814 26387195 728981473 574881146 879970121 985776936 803328232 193872248 635117467 266039156 469210987 572119609 954592035 579268773 583911201 692634702 294370673 364278709 645616919 44519867 154695851 892420179 469128235 81825400 48507916 234144609 742293906 874244339 431899745 884435319 860242770 771056268 889631370 127107423 174789833 990725656 748093439 851559063 72010532 271513183 709669704 872608722 733111785 805000862 806434436 614912375 464149870 826655494 826647011 285526048 545420639 697191227 791386156 650212637 297144636 689741013 135686456 225396975 483769560 420348386 627029621 222468557 925344987 215536482 658068324 642998818 319206209 305594826 61035546 351279885 347384282 322014082 281244099 229165791 894043848 48045415 512288539 400471457 544614659 633111882 516816627 507021707 61556952 124131438 986537650 361444750 572733542 711009294 386330833 849336267 179425824 491778005 623263582 45473306 932200782 9301604 824974458 998848132 428717707 904847823 735200987 910268873 460129352 991944224 329544779 420507099 951443272 342671827 402375206 56000097 190302498 572739672 399210976 19795765 848548035 137364117 950015869 145329383 855153897 384389985 827165719 58032951 16665256 716987914 241694812 640438174 750242793 539862736 430591246 74204614 396327910 82441063 455164289 539128334 693806512 640084345 138102816 112148487 350262953 715237666 257448168 481437945 141191434 99536242 64890346 90638943 805955678 130457839 235569102 948198502 876714501 177384976 940937803 582678643 325467059 133637571 769443504 996605338 234570734 221126120 575880799 822848807 30503571 195590099 63509324 59296025 653403473 317834446 639403650 53256354 122987564 373944980 571551902 819080360 589961724 47669208 848676434 96838727 93314795 108917948 783732963 744211789 117993211 152744794 201203372 360449213 383392382 936133183 338266009 705253709 592748700 111251179 182170541 739505639 988014544 329531986 425505148 871846956 101629547 307304798 572613809 771230444 16853776 882882922 314335882 986225839 266629430 618595528 645283415 65060911 509324202 732009789 809853950 445616860 580113674 621523584 640873594 71947095 146161738 817623230 533360215 572665335 767284531 230135065 252747832 529021255 778457311 787824676 582723922 92058757 193225279 766086248 497589742 124343333 65512597 489094371 229076459 768250957 399663098 503747972 471151929 11667286 743001561 273241520 956954207 314959441 100261234 511091904 468961525 628935552 507914840 186351745 713228843 565097688 522522867 135094194 11824961 317891718 742284031 416952969 157943309 554434919 706259468 70409007 997793656 280746382 504748028 991994431 239152641 695045826 917221767 430843723 970549816 904600317 397035706 642605399 155135300 988935406 994685811 687960412 843097438 501166712 127304167 488071878 46006868 356359985 641230109 976520183 535528967 808820452 159880049 786597570 954981101 86469135 231249682 860321520 854589583 626947686 256154755 375061182 697247244 490814798 278110493 707180381 688464021 439992418 369102732 776707953 823263727 606177778 893356110 45001107 410960628 518665087 527467576 582686415 911284242 928110145 338087152 878629159 862246858 541954977 539623283 64392718 62605106 153311167 42101905 17085677 624073332 971876333 832312684 724962209 921096525 769136433 791129085 775601403 980741518 74846919 645641103 355499839 842853791 551204509 418226498 485001893 264170231 524267990 147180169 620444636 386281637 106886984 634637228 211138178 258739146 229932541 857122887 941010861 708664861 38140342 85779913 39474277 137968229 423727971 554117110 728565287 637623555 207378860 93201766 162719588 191465061 541818731 682548740 753720831 911002516 426437168 162496399 582759379 918402215 246705340 220287516 715056427 421376845 760366982 213589138 79087432 38530376 992890681 973439788 780305631 870470380 370226996 898434043 835271832 185009060 31207944 657529698 978029456 854325358 948298750 222579352 344912856 679698522 528182159 529189417 367146227 694760718 541851626 169426037 493318236 102474053 550606193 837401648 694246910 53020491 174109244 374042849 574934714 359211395 749865108 329579875 628749541 88253666 640943481 853886566 142761159 70583665 504608541 475644654 266239261 382353102 54360935 432606419 26779031 995356331 795609201 39764800 852973915 666435918 987031819 481948469 834603392 479645712 621734197 15747589 577938324 308395998 276432040 109963736 873375255 192079291 443256142 213465130 51027709 180101436 426314182 200883786 157418032 414721290 440961505 244447196 957285900 218887012 237443368 869921112 757353442 796875930 412920659 261543049 282226805 720749459 990659283 465717006 405246079 550296136 357080393 130254556 793097005 912753735 276986380 861438138 177924767 567162672 394962600 575550147 94286441 271437115 579439450 271798504 468017173 376096689 571785109 781423468 962833311 370321775 844345471 321944934 87440375 656804710 647174516 570915650 664563075 828763933 307116162 228556096 377246362 392806189 603438316 627564020 388580362 519783364 581602216 976986820 236348818 989078307 706817505 345501293 459364457 439157280 336441205 388833663 79216566 89661093 372075895 875228380 266242325 618480687 442775214 516649533 777271576 358792783 266326037 862174893 551414212 80168749 996584281 99277068 28862224 383353344 993713502 949145741 218351465 934454679 639350970 440719672 37467697 482605267 90052153 907656809 459016251 380756266 228982615 412881231 431129169 871064358 78478537 783807342 185485231 499569380 399804660 419310877 442849925 819784342 339318900 669394953 669868152 642718977 761940119 446650288 187050273 730699264 380430816 978958311 136744076 602205951 657940612 109590869 21074363 186904448 707429616 423731189 579626785 439908250 597266497 540652952 128446248 199031413 428438730 385449057 776146603 400621263 888466578 952885575 808797052 175508858 484518355 113581718 451379423 653271515 787599740 908442734 671412749 125188205 566602672 311240515 367571635 547361596 636672581 264584283 174260592 437244011 376622918 636381267 894689370 265047726 249764210 632999835 979591034 400646096 788333242 106554613 148564811 798154543 181786823 173641722 720460607 543272507 599893361 475289493 325495866 879244026 637728585 195327109 765258005 284078727 250224144 899748319 543623964 957836687 36647742 114316171 726715537 839193298 483144828 462777026 90812711 603249064 92818474 976778902 570073735 857898617 496733146 387239530 978399438 129559364 323743443 557368950 680297741 732647961 656195215 597025348 498346952 642789791 319257405 274730294 84675960 231146895 903377983 93843709 65232137 477267766 957441197 835232803 773721692 130696183 997831633 889164931 382261446 480957895 365243817 93147083 162446223 571846064 173909353 303591425 121752693 346304078 524221430 600137723 781035558 822371413 466922603 150354405 642260169 753123081 700117656 545024959 905880694 471735492 657983870 593243101 440757689 351032179 173071828 785253 98602003 254758681 255092869 63376084 591190137 462163019 287511344 69780602 554080211 716847795 794229415 249292537 670482302 756702606 503372144 948741066 757561291 737239597 532095559 44329400 692943998 90537592 283315354 418899298 852910415 31616870 520540939 985168829 335127148 822932870 659996658 226624656 447408885 492388729 386485721 174326519 756672383 104513141 541608446 29899745 573081746 668131012 976081108 298174098 449212203 642385475 942920322 567287586 28268347 574341348 382204770 250898171 789769765 353724716 643861123 408676702 5317956 753165493 81020456 877460447 349006435 600285869 755710023 349111525 861471811 96598614 572294923 349593131 891347736 446178692 965412691 932412226 190366476 640379170 188949297 59682829 368625339 367414701 675642475 951996227 313667510 429732791 163169533 364582640 878022400 153892453 458028436 128169716 971835284 803032050 614016533 441751426 384897244 662176810 308304916 586017699 651093819 608226543 130431837 870551473 260219525 3082424 727040111 397663708 5030018 387191565 93047548 851909288 598887279 474729228 335237739 183310189 667188860 530623975 290317398 853014742 44184654 161604964 540762380 763964258 701590399 239182428 72061968 561643495 523333913 568780092 145102488 25065994 503928095 435712135 804165647 499599047 340384517 880959825 559445651 637742319 277476402 842684357 687649143 331996069 382712453 773552545 727181763 600465121 992870605 615837365 6228655 80907757 898535760 972211560 905682988 296925674 593923141 58798387 282295131 895021644 830677594 759514915 190581011 229961562 88391982 741270619 430412895 385262767 242042328 326373008 860343550 925503420 604314462 2325643 89403874 59649603 322379583 547923627 88114097 463119581 347914730 163510624 352277831 925468534 464218949 841114545 575310386 194022348 568418087 789417399 288970037 387992051 100633053 77497632 867221701 993153747 677550249 390950829 896350095 558747304 867676222 700459444 450465008 206693250 766479174 638964382 576115067 476742595 664621788 308467050 316605815 456598179 394098450 372033832 390840671 986263215 95547756 59298688 672700512 884128838 210871652 662475561 380798174 112138779 690662628 87279729 332435695 11776438 15864014 214723516 279527134 489848307 412009336 693421053 820209065 942887809 619261224 408723774 315348356 776337251 136906397 760183582 372633172 838902643 795846022 112366926 560674869 40342234 813290248 985072659 442284533 169945242 793616956 113450183 268652438 798043652 939915950 639970392 658870480 266495810 315481823 316896712 503487372 129133518 287976644 843905707 886393962 259324153 515299910 487196076 902627132 272771173 917775808 825086728 48571785 964649611 376053892 603465489 335418635 276206903 145534806 298475180 559031345 829442566 164181231 742394836 996304542 303147759 794142331 846299157 257231272 832130743 481220636 586869521 52752602 77004155 184983397 618816255 134354034 611869994 269927903 460202791 125305315 384272393 352003975 44159591 473224277 502877997 985099086 815333809 518100256 575090436 779648920 312920714 111629397 791560653 18401470 437155213 555307829 779507739 230533004 520615142 161141431 630414678 57148867 554292952 638987270 477639225 790907032 421704247 875753729 76179285 43050291 765057263 781554362 744229261 376191793 606016635 43101688 6175896 620513059 539453038 354891188 619282307 448334093 535117038 460913567 969356076 877953767 869611828 195255963 67229384 820875040 874045453 24835390 691351645 192751382 4377692 315504722 12087625 524643230 884080534 13757784 808566457 396373891 865748036 202608384 113896499 230910975 998638724 381705650 87817741 396912451 961159305 5584904 448794611 935297781 781778711 717465425 729161061 967579309 69631495 926580240 372324406 661975159 584580297 602951292 681807118 267431764 442571485 273592574 682252265 793815480 692433497 42029237 235126934 143653901 610735718 633065973 102294330 683835695 96780739 674849987 817047242 351123695 740616001 370801499 294301076 692567184 498804292 250845867 909625783 523732301 219289929 88117973 419403686 744768721 499888218 689478065 835745449 68178877 937050523 912717128 374334811 237421605 215177153 725546586 9155117 503439379 51410582 832969433 640229346 637332483 900184951 310874732 484642833 560350566 830451158 183146221 298609575 524967711 598085560 186777323 655753570 306929672 894198327 129814057 100914262 972728174 946016257 185976349 287888492 364361105 390858199 215351922 752779998 42289190 579447567 158347654 353020605 464826580 695335443 977244909 540793707 242518970 230505184 556124140 919253793 298618344 730573704 669607934 436079466 473784289 277747376 226406739 496689062 74317855 916471826 239035212 222779784 527959439 607061757 760621313 818945945 229110801 30683344 213071803 153951667 747036921 282987906 839349114 457283974 19151249 770919965 998965615 150861590 901856149 189615934 629326979 437972795 909682101 162092951 607453647 267232799 400317462 383501422 243522850 552161220 603010257 255899675 188661631 745078396 238804595 728431246 917929883 100402031 474919548 574444998 602121827 623794968 283144672 571937371 210952052 876799944 557374345 713872373 862706082 378893346 787247314 930964434 917301106 216898973 513622541 16623428 21890975 283300102 309117183 453057073 999265176 113727739 292815199 778359697 299038720 148362864 315333466 910033908 101007661 348748590 109702674 653793274 733168555 313462351 178436122 760761560 874060470 965097156 104786940 318281945 683634371 190663631 443109043 923834843 880008695 392959881 564317745 195010510 851479214 687945053 983372250 942795065 173507574 485454475 12716807 687215029 895585297 507407014 278261125 896462447 147240695 739596822 813064723 57009322 742375633 425091223 493594855 111991355 452399231 200572344 514425898 247171595 955677203 181811037 729598583 98614425 619973972 133482046 746452320 417436278 126653500 834313830 426254825 17881286 734891899 182207924 51290891 325955525 540724465 358588509 308474931 214418240 670446647 263486824 356212672 862564120 231124759 673707313 270906248 615039427 62716944 170134502 217285459 543937739 720320211 879521293 620617055 822115660 578849480 577725692 582697178 30512762 568858506 457495392 456526955 878975513 167143783 768828343 486843050 125176067 516479969 493731029 460375204 212670374 771750959 459067491 233989720 726320259 637831613 68196187 340612412 175969456 437919911 901424270 375062712 367961175 189775426 223192350 37076649 507134773 746476436 942606596 606104032 378702620 595228631 143203211 496685729 285997681 255196922 184064467 136318245 864991406 596633631 697325903 973744664 479828705 730881054 198997063 475271963 869247532 681445377 106859095 233946435 612333123 642534278 451455726 615306136 606082033 900718497 188198352 399644567 277743507 855501047 453686677 221582257 421886363 882457699 917580328 586166730 595894542 164778356 599328584 93257658 782301703 889679085 555437322 789587919 249179186 577843525 872971349 778458441 566201169 273491237 768998756 345325789 926405051 116893164 437399624 938901811 563021528 518831662 405753700 127260008 734615974 348188209 410225647 298902925 10379575 595650158 927382645 350864678 741660465 239076886 692923222 520939947 198083660 789342091 622571334 752928010 981263064 564566242 949453259 818411555 127612212 112819304 811397571 74963787 160820824 907218202 396535259 101508810 537592908 820203307 925875992 789469533 579650223 334816386 32705874 489430196 808011569 73314105 159945140 356493301 934466584 934610463 323789118 343093815 298943679 404456247 706036547 369386248 664158227 115008567 922479595 581398248 728422164 216201482 873495218 501163468 797454170 28874830 657190119 874758555 864442766 352153047 283466798 200903860 725970412 270661930 791218943 548258919 577686728 810953219 783208741 391767927 102455045 295813839 845514815 140086943 115728543 494420275 472385602 301439753 355388195 918370435 79485941 216775896 45098034 988535883 574415731 943538592 962249218 817577162 448026285 442753256 497793500 190460274 220604390 7779503 748704415 913774954 933922357 481620964 798951740 135515660 800296454 408687341 188827960 952664423 970497945 902903329 149310253 51829438 912264066 276250702 48037192 688789254 732536615 916678964 548859341 828758892 804039493 138763783 373362063 21776845 83529324 689491441 370746488 363080509 652589438 122531981 429152263 657288321 570166836 8221805 328358349 319147156 613711257 784009110 960036847 823959846 218634893 469558783 398904743 675111704 261401155 451762710 792049603 393229057 920759491 278692666 443685668 744795052 703425897 445563458 307377985 164412056 994347876 13850612 57971362 929454711 806328376 970161039 344762725 53027247 504464444 857896258 872425403 114440924 702506781 700341938 763645036 561160524 801064025 259496312 853176655 221068161 476002757 14499745 165342675 941268403 728054280 670032940 179195770 829307979 636817181 309404047 832763480 175522921 422883029 267818547 659553688 873036896 894424403 753538803 405770231 608110645 689011086 107302817 168027207 191777827 78918610 747777409 462159342 305894169 749787199 729583564 319106916 706572602 143198025 574282287 635846328 157805148 958413878 490185033 182559756 445002890 302222243 512672048 714325013 333390978 922439167 996604397 674298524 840447032 814875663 18823163 38118655 267890513 372203881 728357580 470418608 25895849 761564920 589405508 245119413 323324366 226541438 854211132 522614055 651081602 501177869 609270528 731623347 18477116 955582605 639637458 338239516 245122984 723002426 324816997 182368694 352409123 258908707 400970850 578066669 510341440 575388076 111179238 414586812 218578501 817511181 238477826 953275447 942746798 533070288 838331706 948893953 971156649 160395607 224564231 371588054 334172569 240568659 939627349 68158979 252084372 92483150 152803077 508399337 788399333 228294179 601280108 318020734 753868426 144019072 373375187 943224779 565774518 956922219 831190005 220115311 265631312 96151482 250522243 96684570 235642995 455442841 857872547 272810259 886790380 864258824 555834477 292733107 248014015 429054555 701624941 169286888 475974819 580330680 868329508 848727475 506207617 719980188 965269639 106810282 749858041 292785751 160196222 805480054 684636124 499320971 423272806 31168854 749969075 435680945 232107408 807280027 208214071 320680339 384275648 729555242 821644759 30709203 721101486 305075453 258500149 83173987 788169096 573425570 787922345 404276491 219294830 142952378 494993596 338562791 310729717 43641979 672797870 166416102 852242597 908972591 31151602 223602252 24488315 621289651 761554605 18697520 105256040 346459641 618659642 390318335 876179663 226181254 783121576 94205175 871692811 234795509 234577722 206533805 936497639 644847474 732187366 742038664 234636580 333797439 450291159 348689475 674085366 411437106 425172204 579914095 767075463 378621493 441251382 853808110 26871155 385648837 241506174 390174330 366070859 461065332 814590652 234394396 857430034 213958248 764377249 557145525 57987523 444947673 703799054 483616376 764664521 125244822 966710171 943847534 860536197 543835265 779103249 896023537 953231819 156972558 453807856 429921073 865088869 839574984 599521770 678496434 25176207 776761037 145968742 791871436 499375737 45252173 776873470 963021098 246957001 535727118 81217793 556050763 659806486 761350379 355119346 21520132 263278446 909734736 427735303 611807228 665374416 519076800 971717802 959046959 127586483 543436112 804605436 111907180 941419134 664428073 799446093 527330775 371747853 388879369 791360677 695311463 868812339 401329859 898632767 559768681 866397490 689343674 996429576 223774459 450420036 739519850 76782628 753937298 731951894 698460128 588445802 560259189 761594440 796556092 402552035 352696639 898131438 101580598 51628367 874098017 352055570 628380311 990194335 48662685 717213487 328319931 450017660 19586956 565647543 313203478 829644479 627857433 934779279 895571371 837022199 330112516 288766862 908122006 568191974 899358561 532868353 577662596 963744004 4216598 560365354 783043126 94845435 232444256 597435068 757734658 691990569 23164494 10817633 735843922 226833953 205259845 80859444 273755938 224502826 670361210 784250695 925769350 330653886 563253115 941019167 251565090 423627020 659077543 57819443 960591024 256672119 307811249 117872 751117438 42286102 124725537 544321208 741253101 450707762 253700819 74953822 599949811 760396234 49459574 340523947 330856090 462822418 631722509 311490397 365680511 213603311 297902194 326225699 623423571 42453373 841973198 769211938 993696094 707765642 814314274 901548403 391458295 21425176 510504898 678644898 930793229 177227486 532684757 286446641 399748001 448472008 83428054 661280787 410051401 628067699 561841686 370004529 53848239 669099442 926241591 992999144 77174800 126937100 415473842 290437513 625034686 69334075 57614930 820906712 726351007 280195246 606918071 288930190 940761771 373628168 56025301 204964055 954695025 33763998 840232050 652463317 463690387 414918909 771044523 773543195 755498053 388595299 918493039 614473522 531448786 816992833 32115970 659966743 468247063 190008255 642750588 152015803 352351750 955146296 288495688 749912450 989380901 534846905 375469734 630231749 903775244 285830022 830846505 924541008 996148459 883917462 97450553 906193892 554976257 154846226 705366417 415358646 541901862 35298266 61707970 594038254 313670466 712887552 694316719 457973033 156635859 374974538 453926159 458406648 244629100 25123508 449730287 385123167 122023984 436874220 538660141 526025303 150289243 552537301 864336126 23173708 372056249 704882692 694873704 795344031 627472685 222230598 14133449 472202277 448675884 152586008 582877518 233210278 544131135 55559469 487291261 14521439 126819717 34836204 585934252 872224896 437064750 27192560 686597511 220064175 965034753 889674374 281088654 424143236 205650391 904034354 719176340 919314955 292408861 117974570 630866497 667410501 507629398 154350809 172642705 35393702 157967255 829984094 938723411 573459352 246435338 200935434 215175340 819445239 586341227 559332070 147802001 737144724 585969294 534668843 661227344 205556147 735150807 495405255 859741192 183242124 208283840 882475743 828445227 825101005 803221079 462874183 527722243 236395030 84658109 419362572 191772971 587503995 289242024 445999083 720252690 324861190 235135457 649074391 885370236 931026227 264716231 284513655 462149632 302127475 96468683 941279653 974587274 920193193 686551794 536041968 150589659 504699312 762042710 60260379 388606724 499918802 136521381 431064476 824615919 877075282 76202400 628714526 857223382 468554212 877996446 618295807 563480266 332504880 836279558 459733202 983112493 590497106 669279192 78732255 865400888 661226333 398408741 839758494 125063542 801692115 756636307 168060224 470576711 870978350 848541402 281000230 967458398 565288027 202552905 894817127 884698180 658066234 583393345 66238799 803058643 728178463 461591225 113204442 244539579 562306900 253627065 194602301 425469184 578965909 509734623 706580318 264859513 463194770 313256925 526968919 624936019 883204208 341072632 489971191 912713613 68522825 224250507 538625344 587534714 607622567 689984642 636144362 481509698 365224717 86096608 100018143 574978400 934104174 287096377 559676349 340626981 78406324 230450744 515753303 846451764 641505082 918738458 785161012 252581636 656358995 15457586 351753743 837836129 454311873 479802211 646007637 143964140 855255358 32724905 882715050 733576086 344875766 59175056 635559268 656297001 660353035 438778555 876282638 124471999 928798992 672510815 129213927 878895689 59723919 184049861 385184352 429888009 624423811 5723339 167611554 173440024 192201182 294779748 730159366 866531809 992272645 553143571 464011418 550816420 357829199 471677812 872474531 476602356 304173449 555904948 666347541 551227449 239283572 980232468 130798109 497286447 896767046 24193897 440239768 862720101 690879013 27839391 507499417 905593791 209387439 288981553 480888551 288704501 272181877 626745267 909375612 425649426 29111163 880873801 368706311 526179061 265797050 185556781 223250027 560328659 512116383 69961005 277816382 928942259 485000841 659605802 179236427 296836081 113664334 987470746 992767248 636166587 78713527 922023942 698778689 756159127 860276479 778553741 662934339 879370203 429756248 480165727 152285106 357050932 376324198 940483396 205479899 185305632 283089601 422517267 79129922 420684915 653275000 124767803 549853470 972632790 647433353 36166205 842155736 882771011 786411370 576149295 257776784 805260171 750331779 894110523 125287832 843724752 952308401 238099486 459792119 429319947 907357637 773535145 350153703 405533319 217030915 840615491 143112279 18454372 396612260 906973030 854392169 137551637 480587604 140011550 736019445 495563234 474868404 840382349 35849477 100734311 692348377 171876201 76622423 541584147 231861707 330766460 491860190 892153514 349501447 603423523 274927937 663262404 9280254 911700432 913718875 342835019 237287060 162393993 226691513 215441921 843230369 606086246 447359519 404571384 223633267 876526614 653230595 209958168 489260107 607926363 2838032 104003740 440844763 242082185 820317093 829259157 107809486 633596171 495739220 513328230 703121472 768890847 704890723 701274694 7726146 376934165 806489678 972912577 776981080 390686291 101979459 833809719 593499130 608343124 836587684 719499612 428677398 739589476 339914377 317970870 307613836 656845286 451982139 354115363 746690737 327287502 235155898 258442320 400369613 218974248 709449273 324446786 949311645 221086095 133449884 290785489 261591761 511307958 499099905 231846184 360669583 634308067 442684980 654566471 183968750 144341103 408312377 675209601 667937148 712817479 925666502 394606334 77581497 656173422 889009606 273180218 501293466 167606393 515523031 881822852 268422151 21066513 75308237 313589120 203499100 70487925 392897581 71077798 936620524 647991797 217741234 332315328 290171257 136232824 254220236 908656752 849594814 74881015 734012956 490199720 963536357 856395007 224016378 518916144 104357393 638367795 682200815 713319203 741444566 449312200 299877179 589636978 320565436 895703304 658137168 728322399 440906431 179546831 173179221 939952132 414018770 297667601 754798500 544436170 994026839 495746642 311518028 173373682 532012712 212746796 438086031 623185423 742030226 246997453 577983333 911662218 844575701 771890550 82885112 289911581 50747557 197689341 614284582 243942489 230647596 878141260 389551106 580466976 323174661 584842976 458137428 639422763 477025987 650111050 771509780 544207237 550184040 886703025 297981938 49119501 902875118 290772047 238744017 735379193 179413442 580571376 36751432 307252046 649810755 264571510 289620000 990228841 172546888 222605911 62449369 734565497 591025815 382966557 985474852 810086914 967746671 640227045 954224490 972018779 448664319 821476321 968959044 610437425 866132460 956090582 762441984 255269378 144942799 517715871 467381795 193884323 794400181 866999208 326867938 51175867 959925661 616164979 725997223 256905029 762674942 957582358 189856146 165208338 121045054 525121467 106524405 514870596 994142267 753527328 802131671 174978773 517507782 525202965 475089266 201881614 835824932 651804416 974568886 547672336 771452044 377004380 624094660 689299534 723523243 167559477 159079283 170949393 270743586 341224109 718857422 457371635 321449223 463666299 603891347 46469988 192191328 286668903 269497526 394025513 739558315 625206735 610499292 283282391 612096857 779074086 230828257 220446044 800603982 71505775 635683154 103457143 263487587 902702278 40762867 919600955 969738725 525812951 809046075 739898512 389154835 282528869 475103699 11629746 141351587 124783301 822479131 132759728 641568061 682050656 467528613 663109614 709183998 419236149 862034616 668651172 15649783 90742612 827837390 547653724 745906092 344620388 398531862 474684536 807390614 732551454 693879283 476487849 542845089 759289807 409116027 2328953 184767663 772645594 206132984 296738498 569256722 551576628 354419819 847020085 470893334 979078886 467543812 987825621 537503861 302743951 68345259 626751097 789741537 901454559 623771003 772142157 346097533 21424669 435267137 112352081 292489060 244743586 490707201 650387929 462828577 529574748 654681201 127794443 604274997 983506252 354427773 113856356 884202389 800415240 143098305 655741747 430399017 360738106 454516754 498887453 616975950 631952415 234802934 576924311 121161301 680578056 260956966 243760751 372680194 956550364 975917587 94988100 639946509 545568661 127297119 267095049 445027749 840533182 965789791 765913734 454737640 812582652 262732960 974175191 980227435 269702018 136722015 964623083 933848504 209441435 74626575 10237702 256392395 460194852 256117207 458978367 978800277 743240718 955500050 582922755 73877626 590504161 230079949 603835792 93953490 906292788 251127628 256553083 328607339 952628022 922636933 85061931 791865093 747085096 950799267 5534043 327607765 221380577 42059652 428194972 465579267 30661193 739357244 189682384 64298283 750965470 331491216 917854896 826272736 867009586 996380540 710601800 376745509 620164458 917858990 504716662 266153202 305477313 502003976 615135854 41627061 900727811 403075617 358819896 573137614 875778834 264534469 517370160 461649425 12880997 434905713 240482694 86961480 141225348 948559832 911788476 580682415 554817933 333969248 155673387 263740790 352662450 70708902 144675966 62787651 924462521 560954358 439375412 446414765 781503610 616840403 369433378 924961474 794388069 887946357 88131311 462177666 897787897 312590406 973610135 69566817 555361870 88690788 394922729 863022537 91885452 88970275 33516297 302164118 276642162 171365512 831976686 669739160 497149904 141257422 987128805 425320980 189690125 111510245 842396940 182966595 144217249 673641454 468622808 622053586 975302044 138814656 483198096 540617825 429997854 20441703 286754511 352746244 78351069 74401951 794536454 699136965 402927522 258334301 962250231 517654047 994774476 546095175 764525371 59020421 108733899 932002102 336997821 473711321 836687014 435740859 931628861 578106613 192772726 497276824 818163663 777636134 686977257 587653699 921274969 323086507 979708352 393128806 856159000 984350266 424068944 539928673 158133787 27354236 50004741 703567815 661008327 138608781 521291739 810521565 809961297 414349437 974811875 256389918 232386375 946576849 273740740 586941625 260806152 623076354 112728375 584394513 367100999 317968636 567823754 349332028 477385612 804713377 537346334 452288645 117303474 2769988 172426474 55242475 283242602 457194286 355516661 723828639 581349303 540716829 791917791 651472010 160561777 679028672 292702297 312467396 672928706 172235836 170574760 543411742 405349547 663096234 897861158 726722457 831730304 813921174 425384641 347961325 93175144 765057154 895919227 385305859 359533790 711989857 899197160 895199099 654332467 279093532 843837107 845341991 670088457 743347473 26352665 576189838 663588313 403241870 981700460 95500906 572345966 879446362 25797521 457364522 713554024 793110829 808132738 932969073 767837627 157101108 295258062 537873045 807521069 445328526 106035476 167794209 555235035 491574225 222068363 616420691 875069108 913623941 763298173 893797279 330824444 770375079 287504072 757137450 243683019 686871336 69562204 304747087 620624012 209103468 50407103 147590686 844150398 662980556 730633100 241650904 779745078 672271380 529876975 360197492 794337307 128590597 501896747 70979870 953402345 391520724 898525972 594395058 855928623 890394537 896229013 568694853 10045649 651265058 908164140 306446749 912187014 11736013 489053033 669594804 336604507 5840561 266429043 598146873 456622638 157650118 429057666 577603086 782076979 813059192 821279846 39155659 633855347 327082280 466348799 485759290 418914632 72407979 416651202 534967769 42481891 936913097 655811387 235838555 420485574 866251199 44215685 597064999 384469066 323607742 624719060 311590103 599931419 733323113 393433579 936399547 647847095 332501339 638303398 865799508 49405426 670263967 821966450 878351065 941869172 125310006 741296848 749150645 354211385 415312021 253292502 692373254 806978832 382616100 381499053 62997280 531269405 716816832 5792788 777945609 924437848 268489529 979274971 285711354 764513292 951744469 269254249 155884516 964490584 223682763 478752055 971329000 932383665 227993545 446685523 912900062 913389150 109442415 848081118 744180687 295876091 186568658 749285518 340056699 678139127 188984570 369595949 255601620 285687830 67345763 601998104 757431169 506616047 861553792 995760320 132807516 774379118 202374451 550610732 690310645 902914388 803044439 962438006 554399500 397291186 790012727 141971018 624207898 252879474 485343763 922436714 475670729 975512014 888430242 698743596 918796152 406136791 711806091 460630266 762758072 122532335 898485227 526290385 910982865 240043087 862619602 867645379 846001726 467553922 720389317 533348725 1739308 97541608 534170430 555568289 470087679 897935412 2670631 620589717 943418574 359679983 390920547 666057907 685186530 680104178 922765382 153481455 317111099 207453936 711708695 419126868 839545355 653198826 245854357 395690367 643953976 887075000 759640175 388100898 686464478 642206599 984670155 953985155 977731531 759890006 662063808 246005242 552546818 690138488 646125531 834603894 70744889 805382676 361842846 145406713 122200154 689821864 682456060 557051159 170633990 271563138 771747551 9993596 71209485 297502022 842279075 786974051 188191223 336107883 94472088 578728479 31706494 939915965 65756547 179343254 21477394 402647005 447985693 394728640 371482196 672893884 540667795 588695597 413528219 425862692 612258564 467891836 728505202 897196591 960356614 684733157 136493591 564083405 528478242 713931184 745934078 837262147 896213331 565707964 476963917 584670119 726267019 678029305 326031965 772619621 630012207 257875950 232922687 438989757 686323862 924441652 984726581 917986370 155062925 150478328 941276212 989068124 135638486 642435709 245016169 235267783 569754276 847481240 357492657 198782482 378485536 955068978 304163871 551056673 260643816 962225354 599283578 508619436 963196043 532406768 217773500 520429246 892576270 325321419 513961364 455924534 612832106 405129108 115325157 671435849 571620363 982819353 848337221 370516734 901137490 924534843 270541439 891833264 553877012 311887984 592773393 541725328 744720666 14938689 891863214 637645857 659234207 415280845 915573438 689466810 24405205 847970117 335901401 708357640 982773600 170645870 200297808 833188745 821907417 837735970 773949860 423343889 929730380 688901583 893874957 462713417 123764666 931123958 584159476 957247019 196837528 763833005 765460857 401900936 33695566 254972190 134313966 266371458 442151866 928818182 808461657 638828050 152157866 531829047 746326774 214678147 100148837 820061974 865646771 462807029 684929827 365811485 6336947 249493979 226126736 174193242 784638668 279850621 915999053 312236015 928606472 839008119 582335343 474151312 754059304 701204536 331467518 946122248 993998108 820094084 281023351 570949556 656239244 400689395 324455755 433796870 324470610 586850671 321574494 355762435 818915582 583126458 337448585 242069446 945348689 434981350 218197016 542689019 235033538 271266011 393153612 599518820 367916540 389532884 734761946 191041624 330579038 154963938 995069802 736619583 340425593 570790504 549959705 534249751 880126870 885819293 441609207 993196530 580962094 260425229 931128970 123011702 478756719 301315096 233089353 147155291 983539390 787193458 209182242 858471152 69986608 812994721 750119413 114116503 365157647 800718210 162839831 697105477 355972955 636410309 384647632 745815811 106884166 407871596 171761373 315667311 757445559 873555280 544439790 900729660 643724232 30736284 762912297 648914605 855686984 624454736 474528422 980237086 100602426 18699455 372096752 801210235 539314260 825851153 536054666 283997383 641134465 401482434 861528680 396244119 23774816 653234465 949307250 917461396 806040258 652978642 391820549 266718205 757825584 261862733 154493553 658804258 200276578 910561628 285664892 671145194 796478921 91999649 82976733 423031886 355004422 310008846 114318274 908587996 166291056 950306666 421098570 946837813 241580179 152807379 699896076 389835919 485183148 61251895 734193551 748672307 901821998 324008921 945519567 488973824 242785343 294180051 813437119 355489254 68249147 271585422 605426881 154625132 895927344 420017483 369824303 129917995 452172641 113070493 266827734 11258705 222304452 541498093 297216374 664337439 975249796 79515637 587829827 190162795 98724735 820863301 891467623 932150047 823957448 119237058 402485886 202879160 166816550 679316258 993623576 698172360 443196564 558339185 590827066 851441268 51271103 870313102 870486749 601991670 990869899 609477294 878446702 930526492 94561934 508467929 719200845 952181447 632361364 335665256 729228622 220828782 639247897 246427277 792382010 581692056 196139730 396917451 593693775 354298725 716091940 773107066 256042940 737806598 9338539 734288965 759137830 977367617 315213749 529793195 650659622 263587566 866575813 512458881 535238345 73593980 216000272 688493166 19693070 496446060 156341763 292538989 324421996 759763669 207429563 821466703 843769673 548699359 955119243 139823670 234736260 293365064 779973242 243057948 251885292 53817570 881862594 819807050 893588934 231556370 34254674 433443553 446260299 424320083 207831373 911050836 284906023 90569393 298312585 657705708 551620092 613137999 243713553 661897539 437396445 715026913 620144036 239552457 889061331 726633779 162778163 408181059 564428379 255382432 665034087 470539590 840708326 391871643 788460824 634732736 833906264 403150890 491095511 799391856 258624394 246530917 154421605 967533417 270743497 514904316 951827258 483854227 792671572 543546799 689684735 620120106 507802081 513584339 498332948 529540157 350486808 509737172 302079243 390684464 172049175 430158765 115832363 345592122 811208940 914173297 821219310 120323560 387086622 131273414 394290819 666504344 389893669 572650341 683759948 170159871 657539821 990753436 673275745 898169252 987258712 205738955 998579724 647034466 100068025 380568298 308179787 544176874 889795673 865786114 638404690 427783487 81274357 722813615 829481990 153613880 335028286 732679333 167419266 131524097 123961688 736696360 249788054 699801242 638691163 997198738 289035843 32101463 93191893 748606161 125515072 267777118 851469639 112983526 539015800 353583916 8356259 234079591 14813578 372773648 530876629 420009725 624577864 715899567 92924983 577850855 987413048 894710142 921619482 884010870 927703830 25264715 816642628 685356431 121444688 18466741 829040237 4178220 996012424 368276655 80826049 86943451 20741654 51988225 874871905 511210813 344747396 361327559 831833057 559520136 626939664 934366192 245162956 188575238 38031149 241839296 422683420 15351956 862447106 286986318 163120066 257669924 216274409 181863943 687325988 207018043 206538225 80211241 37672089 609426803 410569309 974714185 301211631 192544762 710244131 435441870 660591590 462244114 135162478 746268019 804237491 8808591 946059549 128558793 889244798 916802908 36633410 822649010 15222244 290242550 117348515 49745383 59502197 731238639 553929020 138072692 881889591 283331948 691799482 960016951 437494049 222624680 750563330 480253796 428086689 883973487 137526184 4046595 92435735 196391588 195073656 11742576 54603607 220486075 796552433 596503771 300375083 198616127 354603717 448587206 826081743 72203597 186841435 961008010 881555827 113658904 868223565 713474258 784088509 349964387 604307946 429432349 484226884 984136970 899396533 835496000 537049878 879606905 337062116 623384290 48885555 450862387 880595170 957379327 521181967 827490892 564280781 959730022 633603092 142862320 202570488 858686779 765516318 136570330 215803755 107571317 462900221 419630557 456862814 704843361 868471286 46927967 281560514 459488797 210608707 658652377 696692920 825233694 970594190 772824152 358799895 344227755 396374906 931431423 329608938 7826783 837360410 339022723 782510320 326825387 707945848 224909229 391182619 839425617 136140304 388475100 686543377 81727978 886997842 353117568 908027566 386460257 220671267 149400736 463107200 566342518 402488156 910267477 776733258 542338877 35940938 794454605 402040449 86012572 142855980 416759369 572639186 426385360 110905529 192619167 544873370 697071336 669234071 916814520 504428652 144076872 947056869 213589907 90644623 695617320 224495282 878219841 148118653 28500499 833526915 602480231 220393318 838735721 758348241 672468159 804904875 949015005 251519112 337230231 938504547 962964215 265384330 475241808 356910297 363832722 154558762 45466336 846029579 567160415 258843058 673602129 182647853 656699489 960133085 722808640 728582180 978493296 965940061 325752670 641988364 893892790 894164310 813247218 473523635 768131892 75943649 302090582 261909531 857152574 539217802 800193398 442171900 17277947 335508435 88467540 788410175 621319654 805504431 152187782 975047300 50407760 998689543 39774646 362126749 792350171 40280121 242188577 725355537 786521600 236970644 24989721 796522906 177318282 189190365 490587523 316106919 701305369 935481804 44818778 222833371 94579105 130709136 65834794 442439052 359351528 325147463 823322261 671454789 824837643 290645895 120447442 951580484 691957497 889609944 894405673 22402556 154605046 666020664 63214200 504390549 819629594 813436309 459950513 830642535 449791440 496329302 196071770 731471235 220628311 252023763 609755147 847893802 128688964 364698328 730465779 148517203 462279934 326609702 845930324 973894953 493626177 821458930 470114051 977995915 934794908 95294565 833037545 456604811 446759411 670252570 828184708 453979632 186114301 500506018 351879014 103568819 779034823 51374339 109349301 158248837 421929007 319022645 543920810 457095752 84456553 843024804 296933138 137713810 941730686 180994737 113340368 428509485 798549704 829106737 442203737 731832217 104277880 697018092 812294966 398079113 370089744 466393119 14130310 381601378 284812265 407491579 744734841 709439423 239450031 322776099 789642198 781463023 254995935 200437298 787244150 409336693 7708752 114320435 94961094 255215752 374095783 500710695 992464713 697219473 786273249 578875267 218775316 337065391 488184525 871992239 187994705 835474230 653164175 672538248 24738748 674779179 974705183 892790238 727314473 286437066 531429832 959455991 440076540 592531457 530569641 183717130 1872047 943854066 257052215 277833669 652228943 701892213 303550649 393392584 666898176 932698515 507034571 825897768 7258229 701756940 82629596 423037933 763799416 709718482 285742000 163762836 787863400 449889420 561643742 32752781 455477686 596341268 471747154 951359166 760173671 856322297 185531596 22791678 907506325 82543870 208843616 749047195 611700462 423977369 734493685 485925845 96013875 383397493 99620806 820073568 744841146 354639344 372006884 71417062 459044845 149716382 959655857 420894595 823348937 98984644 718175078 842898759 937533536 967893725 122967694 105444023 939315031 785192985 91332233 885473869 740876137 362335193 968185098 622761715 211774434 441613621 547164313 681503372 706205220 727971190 38138642 439641708 698306598 592350876 833277989 342343130 308572911 453748184 10756564 302910101 95723808 893856275 121072375 325287756 36884840 801922150 89793979 897092133 699646733 491426976 94121503 791381815 700147306 838431172 443289717 577912591 693513579 197864071 371528167 869099823 620848146 733023702 922642672 743857803 316656374 771275598 7869407 543263754 679823295 79907266 725115224 551477003 720781227 711220666 870099666 645432797 502673420 619703278 61555993 861744709 884616904 911050702 741217485 30278652 675261144 74612221 357469410 942673711 286376649 407281361 577766687 241843453 310872894 760491734 501734559 814612989 198835051 474360136 795347026 3084469 381739420 987857052 992025981 386493476 639908780 432811767 995380278 420411961 162837902 787738805 24202217 320670297 787190728 287459044 138355158 363772893 887276019 982558150 518432656 192221329 639548221 650179411 935029119 629563703 344751846 526312372 60657503 464879106 239816390 919558089 714839231 740420891 498908102 119167908 279089539 7617824 795480674 856461580 47612003 39499680 798990638 721886715 168553834 907281312 372624206 388693281 700255863 603945497 82998524 818176606 490116031 549545591 138789381 201620299 936672329 352870683 959237196 998289842 256494704 685325274 392231494 433664530 833835109 704328829 314571133 279300636 681105579 133455679 850376462 504751928 433985177 433140050 59571242 785981185 557550299 12997466 741359256 806059461 877714930 235659760 350294321 488849158 291629231 53567008 976522851 359338491 389103804 232115691 564089520 93004816 120299283 247321798 864288556 378392417 749703300 701372442 913062401 457656131 674616884 98162114 458889454 551157948 958689817 732847247 430239684 736704262 57717119 319587527 88462568 338337808 264009606 800256162 217203157 791387388 413761953 385006284 910381463 983785634 157631000 804221670 19354448 110276108 586781319 395703301 900982966 968882424 19552861 241351986 910899859 759266906 861290334 452387304 205897540 604598999 194984994 226073240 86158651 252810570 137459859 273652520 780556157 293413698 710344819 16799600 781798949 678608770 574281172 269251004 841268447 276790401 923742109 42701645 412463982 120039656 442210828 604528344 741276710 497759254 350241071 34724613 622043762 256035487 873710441 362377457 282699087 60710601 818723316 920592044 213706191 463464717 739786073 269773244 654525336 572381852 364477433 411033497 82171235 516874712 784146056 146457135 927744381 119139542 297606284 314785887 221921353 330532835 818840802 577479293 499343547 675792380 162914362 523782867 9528030 831947604 908146070 711983133 411120720 389851602 456763087 159211020 921503937 43299728 732911376 140056515 425567864 518048093 379109209 882843741 211222221 59205436 251042045 115529573 840500400 461766883 405142052 246045531 335142689 951516221 802653770 537204278 268478901 545922024 44844734 258952157 31206680 65055672 734897956 602682541 849584517 839695666 736069620 424895478 397323600 846195730 755248888 976925310 890385757 528096965 366601682 64346364 676104102 81251056 557681267 674132638 419365304 132145639 259333541 742909828 390504758 697137974 292661123 215172930 595292245 622343452 633038844 590256482 530514015 28390155 881871187 654153696 687498288 562951210 545205409 489062316 495528124 484831699 480120914 957415211 665465735 342278677 558104740 226620599 857691435 434240563 769306667 211935002 424322518 560227618 213506128 736166423 91660233 233064975 9058253 257622753 418810842 190497495 580693810 835126946 2820595 615147150 699149668 660066038 140264848 104819705 379905049 188084845 256729157 184116243 415559260 356377868 615329334 297344652 380901135 63812300 721338013 237748805 532158308 201355802 181973064 536014805 817135972 764793430 949106713 680853511 7848552 354613844 695921540 16507482 776443810 922553054 556102420 216082816 433495701 673519407 489959142 361390559 149310873 81686905 551580460 496306707 239813208 116480352 550143147 548844394 610003540 635131006 625543485 276433510 926680415 710391517 676708944 574253887 809352224 708915584 118159206 169634398 977940629 229884634 919864979 936111843 894725260 647369556 342546690 749114657 781936680 147328972 19980144 445532445 836097122 848002065 530526383 254475026 684615558 209715560 664513061 250745839 123861938 27830026 992040010 751991767 744350554 313457827 297211182 127262368 879230407 158503125 292655856 509808725 326124947 356828595 735133256 680705460 846725934 974251334 743391998 317134001 601388380 495806988 509511280 36658929 168025525 358058356 257051152 242437712 453093668 833487459 660222948 826940252 886635625 220256690 820997893 727211479 722332311 559027373 357270560 400358712 819581846 472040341 557106168 780884267 629939362 792581663 876573666 89345549 795042506 556222452 811078215 102039920 314004850 643606831 430000933 26080413 668552913 116026594 372560527 197929741 580884596 932408721 345316137 161406703 564701625 938877364 449984172 885459366 395176021 185983034 587988584 998854728 527987407 733652737 534693821 203735072 122167042 562880351 649606305 316238636 162931871 539713692 494756893 748053663 273632681 303081589 613466832 697444704 57520375 677493147 540105066 582569610 159113909 763781170 720682802 264719338 216972003 561997906 104432257 485720196 528922580 341477514 207862597 544034575 4818609 343851608 370473343 829360244 18059764 293066418 487882181 797487187 77109741 367494784 165906881 125591421 993685313 833158431 694235823 866507387 496693093 6242527 328913891 65894918 282432807 464582534 769554753 449148813 947553574 286819020 376696259 148310962 42713173 30495453 395404791 189985997 998432892 30000858 398511230 61949287 40506039 556793688 194885775 12359872 559883765 158603487 469930609 989076811 523254138 501634156 412371972 350514477 16675677 326696431 122410297 959689921 360425227 721500878 220505749 49396502 661455298 547776096 151322035 317895279 748404503 920634995 113968063 323932354 380121457 712446919 780407291 175303226 842770571 47259281 692006461 562123702 746893814 521821945 802061679 991479111 473406356 884276124 860484110 775347894 180936222 845572618 273611948 311537659 165680031 818783049 899767407 9267655 237273591 818718288 739426191 20577787 727433050 691634829 299941852 994191919 638055118 141071456 918138677 923265580 647254192 385683870 173662738 404644466 295265584 514996238 742870523 916997299 10344144 326568943 477123598 637855318 864041193 274092657 553373053 725112053 305485349 592692279 710249998 715997407 811075846 426250715 904002201 615860631 504596574 483429994 911749006 300479571 417038293 254952420 741261676 430057597 884253799 303087037 335348043 499052598 890292963 293706591 15033683 90600654 750654061 288588454 113103683 234118989 54878460 50703458 680585963 217508590 610057181 514620632 864860337 452243870 911428142 627298882 113297424 854730369 640051556 277311306 898389525 505191534 308928453 364549523 740435425 115258478 221205743 438223408 710130473 734832193 265233487 820808747 553075897 775518936 539333035 6199552 355128556 476526300 944922521 553254687 819244086 746075430 409301509 495184493 253880731 121341253 391959215 296808643 882793781 736168443 123634091 948978798 933888177 360442304 510500831 551148205 820457426 675137854 909491080 204808759 326345965 561423827 831507637 585013170 941001068 567719954 240483786 940484157 602656844 956718658 152067071 269886951 580467358 140171997 170821087 917628981 953672201 962627858 516680138 985728672 612494150 55137604 686953075 733166869 670261411 764094858 474668898 184682611 132210817 57344045 840792434 198972688 478264278 833847852 392982868 800325941 321747116 68785083 294801419 410319261 441238688 183271615 132477294 947944442 813026148 716872020 976128682 687182704 954410813 397822535 903092413 513194264 453447557 354608541 951564540 898264703 781995306 555608842 164308878 312635428 281538349 132206203 7491054 46902781 394326309 415193741 678263149 139690995 559431610 594936083 730808237 985452641 409348906 313525140 191414567 164384409 841588166 329326538 49580966 908623711 154171510 197088292 311034058 410474348 461710129 142427716 397276806 905429996 908982150 843964802 786945955 132671744 475738903 251331944 270081595 122327613 552555544 382600757 293588030 889241899 689033172 275039066 672632304 474919368 920988456 17349631 919189609 580131074 46628102 651348351 419598868 321598784 635928820 623388647 912387376 352868058 233167755 119616635 970098258 217889436 117089016 42127410 418861281 632204360 148532093 360607285 17020313 353490705 34246129 166342244 99353865 842231328 448919612 145595857 20123669 339699474 628477405 254165314 670798452 704530040 912261220 856379827 942019890 822421077 262119415 454833362 304096048 812140708 888171985 321924482 124970399 290727376 134555327 234752600 681032329 810362170 130655649 808572449 566376264 981303735 769465327 869398106 860514061 288476687 479863857 756723126 792714074 815814527 915409030 560949404 973255816 604956728 167467806 327205799 536190018 909933534 765748416 929583652 233127432 745730057 896776005 687396503 973942190 319315143 597428251 214157110 947149274 952679192 409510083 193074284 447246473 496481649 734973266 476448088 185921418 77614650 598756084 468720203 148802305 653584976 82586213 123603790 835906022 527552899 606743158 528966298 863640708 667079961 526327438 11331869 99389178 592970313 462891814 513363196 879054781 910031553 743340108 86640651 449202708 948579105 535977505 145541207 235573403 472123774 560082779 239721629 163665345 948703200 761398212 953494224 184868425 918645956 488149689 967052439 776310733 464623514 274117547 435333580 114332470 46481224 654955681 91072766 10922821 553613989 714402485 54753776 221195534 578026751 729246354 83397144 611142264 320805014 592555261 543399200 790371006 640935198 949637449 331195241 247074544 739319361 321152993 383561347 230244467 6589979 957685442 944649655 679824253 71846844 526940157 450345597 980918170 682681258 985391162 11842822 11435050 896211548 227405616 714737843 136700640 327832768 741293614 198469275 195134532 417261749 576073878 347686409 429698610 647973778 94939228 199822588 639388761 509065886 548534411 416458918 375362238 325872021 332912064 639335406 228015158 361313577 469677229 819519982 473606383 757113727 290180247 380008053 360549607 684356270 986748377 93774469 921332851 591937860 143232607 408218838 924163770 56606400 231150636 116461650 852337720 227906585 667079124 58925719 913413948 264175669 422551810 32427128 742423145 870754419 819410676 247602300 816987449 61941026 429267706 652609886 674772597 145985543 325068538 800617611 156340926 121215195 129923055 160671911 443297032 915951051 204840549 858545672 702717722 839088630 272620287 887608121 157997583 148170227 427315954 272044921 932788951 350997576 71353479 68085561 178452151 778569716 28843421 210671778 949650885 878345958 391933988 643861005 679464813 954124931 21029539 84137608 386008814 790393380 902464178 586059864 480940510 41781653 336812417 171723633 271020706 742433176 212963408 501828608 779536119 824912480 179736821 260939490 886844012 815724567 129404505 790779946 695292645 164494168 380910331 569397663 856062234 276387253 65459563 425886011 274699541 78955570 48701136 770746797 833722552 75780040 497360227 343096536 100504629 218002403 177415410 12052562 360329364 673420517 915855710 90446822 958420016 157079713 58048797 932107794 574618426 843068640 996754872 75532938 343148597 848135647 817461838 338132659 764572280 167167183 635067920 348667433 220123823 909150804 375290563 792324921 449476443 172835591 349719873 641419623 555139917 528288244 169661944 612346346 656308783 832066844 224145257 682825771 80985851 173103604 523428522 659215946 197472385 494421989 66056165 160766361 376081382 32538826 938108119 557133087 806590240 267445621 425291601 198308374 126762363 467998250 989298107 767171180 553407510 862150945 701685644 213304134 151669863 452444936 566004691 880698745 559325875 440061312 251573169 921352720 724252823 103603611 834195677 284489417 986892674 728935013 128560159 24703127 284951864 711704920 464553429 985493537 139493968 952966373 641675377 797672514 473457335 118079218 151910648 446859399 720157740 236311383 637396868 942101940 489762497 983346272 866310596 441590847 949261664 149247822 337350519 331094739 553498692 568300246 685430516 471424207 316172668 845203872 625236390 920550085 867401067 989239497 736562824 702815995 585046859 269677153 842231981 403941357 420225445 523257838 21690298 731052233 472203994 684070120 231812714 757916145 488981406 728189243 182913289 172304253 404690807 559448008 822372346 976037814 841402690 774359779 693710386 40928668 769915823 842504918 196488634 934275426 266817472 850748509 781294128 68492012 707118926 567403817 74147654 674130520 963896708 94544477 296451394 69167218 333545314 107111700 946919805 421808958 292319803 677124313 622234852 523932786 872177719 47552557 88147578 589543417 880240850 898239748 475412436 219480689 835106139 927872328 839881627 223317934 587063158 672899413 683622414 232374581 191287706 800012411 245202813 602873537 603234708 381732224 527918799 674642114 904478467 932845339 679632893 81319641 329402841 422621306 466956437 358788190 481415904 500477373 424010296 113983194 233175091 93620344 722891035 994851469 229427648 751690293 715041930 110072041 276116429 690305776 750988129 458936597 796917104 784282009 505736849 387903083 343325974 649421462 23308193 132696314 875502333 387520574 528284970 659670020 244122553 908517726 825493850 545409 279914163 553701304 495697010 507608475 55451301 298378368 276755272 319073584 444098079 695118557 855167942 951201875 365996550 634749550 809293673 148930507 991055375 280414658 845127106 258761875 905445704 288238302 199767289 254238808 450400400 434592700 491333701 545962494 737300762 180573382 260384885 586267676 286750958 944901983 967298666 193187707 544252264 702292058 442786714 914900378 236994487 756490369 67446927 409489197 81464671 917642511 451217254 912881306 936665272 291578422 928120913 126263419 62565740 675282331 991537685 117795870 925978877 315692245 437821581 704481288 966147901 523876849 187986725 772763758 878066387 477108209 920129887 669943738 171911101 564559176 378766162 943066380 733789129 537745503 249562662 609695926 184502554 733540884 338134681 112771775 376300201 488205366 616886653 140336481 428610754 522080266 669575735 834547084 190464387 195529417 470444866 815626081 565288800 159173151 440585898 863554743 736262562 832109230 404771986 558151065 159865059 46378121 166132142 199230149 807483283 69957049 945437129 939475503 563431542 937095356 638846529 330537852 54500644 257756417 592212614 991178888 603552904 559064429 32693919 554989024 73664866 978248921 743258020 613903176 851289285 595403409 817345093 257921591 203863193 103959766 754500929 205047894 187324442 787725661 587291120 146110981 864993879 287270351 626474170 510746838 618061492 818459719 555670942 334882320 902462824 434530775 115411116 502365997 263660544 398145795 702637195 343044188 758888922 980954180 37750516 329851648 845188267 615861894 581023028 921040943 635247866 417457066 482005678 184687923 539514018 626346245 292792151 519878157 485503316 885568479 202112057 466187245 142270739 43505653 808359920 564833211 890082486 603727864 524762416 405334674 625661033 167484428 301048637 824492607 224103980 320414794 821291633 812901318 240802898 845868862 933606073 591405021 263005700 661097065 769672728 144592752 506311612 108252352 667509027 483410971 282361290 961217323 516200324 328520883 359960786 264425223 555194488 641302973 50336332 862889125 392421201 207877109 782248707 184536520 533044212 744406217 583946647 378101803 213690715 43207900 946398971 778710521 228604948 155441283 80858359 675904083 44223680 744288843 146650279 516744142 97850005 131765617 51535098 246657778 377577949 744190568 703082292 476036284 772346997 305901399 641356140 363687708 125414479 449486488 27048719 220542328 250586608 830713659 930402139 579772200 518972146 688677249 785142245 518043127 650656387 886564705 540688659 814543016 2707429 687854342 691056803 863771503 399254764 20236622 644055586 376743028 301709443 676877901 602330486 505261652 724240679 626983368 146709333 404488863 282835306 524661691 368487883 373024347 965707377 943075540 35172024 801758335 99432055 323339509 180486736 604381817 43980616 343454645 848541593 987937449 637873350 57458400 961378544 249184996 671832424 380881651 988825221 651000562 560844982 140630945 49150682 462950671 28362702 239454288 140999495 687716462 597450210 752358556 971362937 635786673 292313784 520358612 565155055 695297907 375337257 213950584 21432188 647544510 257232802 179459777 343472072 675117461 207811238 305237785 873357007 505297260 319299401 460169630 804776800 54710186 55817654 844119972 717552287 18225198 465780139 100082224 61457027 346136007 351638776 560539261 484816985 101644475 102066180 979289211 64719167 552596801 479329864 1771339 143942314 297745927 90071249 90582980 688104672 270830252 292069570 687758577 46767999 972224583 983564240 199797905 100024308 954888670 21528260 58445206 211565061 655368944 885665789 926754471 883126344 296624620 310129131 399855261 444124841 26841783 194874773 617181961 676763880 526605098 82282260 516282541 254948120 273043858 19454486 301299199 241456162 870329647 622096476 592642985 7002688 933959349 613373500 584884491 646912898 213252301 603156255 271936696 955350604 668269205 120368132 745300724 999529430 640368156 590355964 767909437 399218347 484516583 368298668 21137343 444060458 131316335 191419598 806158302 834375688 955631777 926557359 775875248 905707213 855601756 85524659 587066496 660527698 795626486 845113293 10235981 833376585 696307128 631553543 462002248 381912757 441407069 366279936 467948634 24382573 561376663 255039593 363679387 989872030 978382986 896123015 955707356 955886406 532339791 311812277 142507038 479759034 674469491 756790750 634278681 718677024 805796725 317997319 455442614 207524086 96552779 881041859 648121749 871640713 312996318 555293885 619766152 98594431 296062345 392369202 84308502 686435662 528117662 223214196 636324089 396309186 786165985 310322280 295750304 534886523 147234827 754598921 975417006 917340780 256386632 167770851 565074041 865401182 589035961 487800984 937889676 466098027 643221491 594705759 333680165 454647427 810100863 770737280 18904504 874211562 30119768 307012313 61465962 56317368 796141936 322580316 180347542 588231512 139117355 215274894 895401804 352518665 220506337 262771210 362325709 691360352 268043105 148668668 714661904 550510532 327070825 715353767 702525505 355272433 529873199 569459679 174320444 560717942 435085531 508890256 743296534 305612599 933598986 161527349 468689301 175914219 284004429 394578017 513095347 174946462 59868840 305947962 406450463 951552305 768614419 150071801 473829819 552081365 223244540 973690731 555429663 165577364 228273859 260372083 679006741 264386760 208195645 343081606 809042971 223569826 571212338 270024237 261371364 965099684 740032479 836005254 747804631 251189799 157849461 118049476 130649230 365454806 52048536 189643435 5097305 751997745 181196000 796618004 707505337 32994316 339522139 806365551 421277413 420310285 310669833 726225724 965433416 161287217 522987615 742766225 527941632 108289351 215379397 46173335 493985889 761476723 366610200 729321485 138895728 40823469 975185449 279118276 705933161 543192640 957716027 431296289 887631674 122869067 430296713 392797342 119289605 734289987 4264126 87190600 434514594 225477231 925783930 189865026 608104986 896336491 356720340 234294081 222381101 125580454 908820691 261334287 668675789 991954403 889658356 723913993 354275745 654027196 220649383 669279905 338652803 621121306 512298706 655124956 41492483 352405694 361562188 914865620 206182881 631321020 918147427 143943991 701229462 599929339 401838679 698130630 442147532 9611446 168657628 840934359 998030305 522356477 594265244 497420500 137755241 529354293 790365619 506399674 784534953 654761108 929755953 580339355 568394525 666177446 618117532 3007516 179629298 716822731 973378923 128545784 938109068 626816438 900538252 859235707 454206210 47055087 441959903 707710983 322005405 142479442 656605624 828251538 571256413 822588814 121508449 739973414 222023796 308180135 420161429 381102944 478023880 879132277 654309383 67377906 455239797 89556771 607368665 493441826 428097865 969670832 334151461 514917960 781357639 664410993 731931256 710466644 502591525 352731277 68366161 284978501 746935245 732710528 495484071 273813939 21357280 356583833 580026720 125823814 4765230 492239995 931892955 942879036 121842751 844234400 306691943 859781351 547675085 281708241 376450249 243700269 325811272 909523887 9680059 604249606 908807249 436628014 500463975 277092610 10303 686391828 420095984 777649601 990575261 586340991 472406249 921325432 932658345 46063196 914509019 696778355 913625815 565715185 910009540 473664653 250901837 701113939 913774227 298494393 863171172 351882225 980062637 284044413 430176045 170331399 246785387 221841010 220355049 902448940 329876890 616220869 184061584 204046533 896648441 283361977 758071628 958750095 302690750 739789859 97037051 75652377 652473874 461830124 507081648 494757191 747152 540873363 914361649 183836369 188830922 410967721 440002427 602837441 443454404 819662674 23382330 114818553 420268151 306348746 551634002 740999083 199358031 724685022 504791641 254791135 730652078 647047023 339748634 270241520 648336999 813794035 659032339 411613455 60027459 672996084 200034807 195483327 923758463 989906062 553574702 77071703 292982604 205138165 429911632 776857987 848547406 269943277 228140462 538360259 911022366 110442064 974346441 149021419 117719752 934223500 173776601 143226018 78165838 209411362 958204743 108173283 209422371 426329384 615286323 688466814 893581488 586535112 39736559 788964504 511743698 805881279 435316865 834929447 413136730 438864351 58488357 173734519 419442828 96245645 512394697 607570343 999211680 85403715 566296208 544340525 487988805 909262095 547779920 561024590 89398041 738919187 411882259 691873703 492799538 95805443 554726298 102525351 241062040 493526186 146960341 570283538 761863624 932301669 553829996 793359743 683716659 343554214 92635193 342997979 879412668 954765170 891538124 770270949 261520958 926018020 26271462 553749679 711230468 647090088 418131710 359896099 740191311 950696576 307684287 424923004 858304468 281944771 951911048 983966921 489647931 496149465 122529770 847432301 979924385 737781952 698289710 154751905 544063255 528280714 412587981 76258545 7342368 380586717 597932533 483467451 988877111 4436081 702892811 565225395 1874247 94197142 34028836 877712738 922323505 522866859 489411210 130492066 712582218 804242088 887630909 530081316 100702170 347851157 383050351 70657258 283413405 149264657 946288903 180753613 885222214 154144972 517039647 639665912 352954360 114393356 148443270 488194155 379730635 301472044 360745535 537451641 250353997 758091289 406977280 411367242 379546622 851676372 444221620 768430170 45194450 537315058 327191034 392405752 712190387 936163615 66374819 497512648 29220093 308274070 674953271 145237057 92796416 113777323 122273905 956661552 949019010 762419009 722004415 557071155 912587322 539475796 74547651 721359423 694715734 663792241 523618260 202743579 979263222 176902713 107995518 694704611 842097326 174038754 176648958 655231109 420081160 626326453 73873863 791017287 626702080 535694225 256001279 862755647 627899526 469035367 776361986 919385818 276356352 847771836 634206430 510334038 213577413 98566186 998294742 924905543 982708899 558596574 341027552 887473686 356610649 151973404 116026919 909677181 662419230 862150583 314951305 212123148 70290456 104464025 965357337 400284583 741234918 626778177 180451486 612890374 76033559 807361600 482397203 197516084 131815345 40739515 404831013 927239441 524503467 595720428 221770424 313558992 323368562 800787361 509642082 500490105 122872680 449348540 222422510 922541416 596684128 265364657 900836827 835425996 449084708 731750667 576216539 502467369 31963119 390797543 128483924 821462231 802470388 498105974 159935970 953714048 732474581 464409728 501179859 347989158 405603372 679883996 38628521 155941402 39006213 238686969 772599452 799140486 593916770 900992089 851786774 848349669 713428150 671800592 380872245 841725445 435826283 437296201 602315084 770239756 110090588 247044289 210751842 661291504 410575707 824712522 91375793 953456382 4231084 585706314 996163112 204787796 483502472 420646713 142172650 454988390 436887708 558252839 618755533 394382461 577996167 649387315 998595036 538797875 297327199 279268885 439629526 321639672 58696493 671902613 561806508 8230544 441437804 933805329 557381383 663501203 863608206 755661307 313487295 564905196 740227959 680409689 31723877 227736923 943362304 545050436 250164154 576985587 316034933 959047529 918245430 943736988 420861719 426319755 34062978 698834578 41516444 468505854 523228414 225892068 602251946 705877038 56438076 743648502 100762207 794333974 203444866 427349247 706822092 651526602 154789453 88390796 954833269 829634285 137657545 932688635 782414291 744305723 448838489 149077505 734349778 615426305 394125589 822709797 746249555 329978528 389499207 331994946 804856235 124610318 765412845 589076745 101832738 319453524 846960187 740086140 143126645 735602705 764438806 27561845 50067285 926845941 876859801 592363293 352098022 335140935 718249876 576404085 582012737 966951776 433873928 237567952 645576946 157574958 658343340 782037079 502499194 33830322 78751595 922399876 114281934 583678850 355325156 476532391 803325654 918343239 459105513 692698980 928572399 430808896 50890752 253229107 723614570 165737406 330707685 436920287 280213771 859532198 347882758 219278600 806357642 885860338 259335429 25776801 395561493 259226928 4572474 39716466 503590092 308536321 7645743 929798039 518029636 374851995 268650274 483493119 561168901 945139272 375602822 91203566 209064460 251014117 203610754 260397691 237542218 349602404 658955632 534886931 189426466 877716042 186875999 439759860 824325871 814468914 97781650 327090611 14536316 556499016 922031871 504086454 803865738 840342734 584415953 272557499 197058893 203100826 40317415 295997775 87501039 740569750 456261714 489928280 147653132 888259391 399295451 756739468 396447285 838062887 607537275 126009079 400599661 327201652 266548960 633294457 637841327 435613278 550523630 77812294 638951781 776722356 714477116 838743908 505417714 353476440 65294995 521715248 33855274 544542654 1225843 589562073 602956501 828373105 799755150 286458340 975771951 579159183 44525387 33464486 308540267 471021896 56428356 466793421 650493995 848948834 381405128 711683032 649409034 82636984 850935898 911082906 88186386 397574838 349656624 307190459 28255814 998888159 555428533 193555511 363052058 15192136 10276359 231855837 482323189 988052762 233613177 622291409 921402038 479744787 862814738 664609034 446573100 799378950 33364749 670978005 67932061 477446742 487785559 896445264 935230784 587221887 466669845 563252976 241187267 300456590 222021147 237271291 560966341 876169379 237860469 189805839 525613405 426050422 326220770 480242329 292189841 89016784 592096084 749910879 517175776 676050445 232326513 989684215 881104825 483564193 148170005 859145805 395490817 427196048 452335566 993046561 32321170 335439347 707005023 428222342 209140662 705007738 883181885 290949989 512257712 407232485 106593557 835031032 265742899 171438218 615078724 484560719 317605609 508007891 850349661 174181838 389342189 454402748 877919911 207966381 835848017 822233689 720952476 227885175 290140825 438112334 329534828 629592459 456882494 937217877 904452984 50289822 265895725 16528828 658776791 268903735 11326789 57678820 723750868 666023474 732789725 110240963 961186157 824821822 676548923 58759267 741547478 910351455 479392286 340626529 915404532 34989676 477730356 597020270 858200803 816451474 519950501 820824274 791095921 491272399 946675335 696359652 793418656 101496184 56786279 186514323 654314024 864791475 989121990 796957152 967699442 774708478 469598105 978342753 666123166 588862118 979760841 799908032 807580414 743555665 368732081 316107322 507436441 648599669 410482595 256553505 279988521 689519326 835077987 872873307 572819485 784112428 874839466 179085792 736106008 610251602 78319012 44566335 697750640 185425945 279188339 314150170 526876848 662924699 514448554 934234021 678246678 539757000 669384914 168621099 920682773 73741540 49572328 21803401 786649045 74579463 834982621 375246001 946221230 128972699 689019925 993920809 474345393 388697570 690828265 980526473 445854751 59801966 876451109 49411585 434207983 619520935 13479818 112369360 761506636 229491017 3442765 443269326 986690837 504392419 626967190 773445603 758362972 468634968 871168514 844147085 683886823 536743522 14223650 292567903 158339250 677458186 354862586 706945404 235655275 84071473 699993218 872656672 219071221 44378379 408167720 440326935 659033830 572996511 413174093 60179012 947646728 10951496 573437379 702151708 971952859 255567671 474438485 533959976 571176210 339337966 244433216 659283335 815184914 954649286 402025906 372382057 406104182 508537962 926434898 378447765 222274445 792456026 779903671 615975396 917381082 859688297 503094511 88191427 427580820 962924864 609613306 945764533 93715748 637453529 184080973 482520271 644125097 194028036 141444176 18369851 976723319 503840485 368524000 109384373 624552083 96633460 738609614 961286673 484364601 22520059 859688029 314075827 312318551 882097820 229840328 767285013 210104335 493815241 90395066 157012293 702817849 268272074 35597524 913877348 190566622 754424635 860904234 261973544 794029758 758124682 515520710 722358106 912430539 446527101 215360036 750928473 331821484 458969259 94953652 589204630 444396603 595044350 663818076 395363862 769096199 812396343 276500723 921017843 566952147 546703210 525703367 624745691 820946965 482730109 465977624 579192719 676693368 458868654 626429851 241501030 55481690 278803978 399908855 182509767 495825743 887714039 326118987 721498034 779847324 493330603 766792102 606532664 161405116 367845042 227512462 558309631 786492895 771500652 348621178 412461503 909060966 657347980 392892760 886076871 603307113 440843930 608399880 823612024 129115185 844115826 394512094 602148809 557485758 750512067 469241636 359716034 390396225 421588881 16293014 518663169 857811107 40619956 435577316 185279544 245194237 298329175 879467827 21554348 539936542 776692089 678198428 954087864 338354441 592606575 226010796 566701896 307371635 986863968 39344867 620678495 398351945 992914888 801411637 952098449 680988200 530415862 67070348 557666953 962338531 587697549 306865731 75338884 927808769 59495175 726838956 466315733 127694141 354379309 856848012 519700575 421751044 177300896 620300698 54355230 42874618 288424020 475854339 260787870 513593717 709432335 530649833 130859394 429469441 476994031 328825055 43106047 615557850 209342689 860559983 441379166 891675509 28022314 643987604 510048893 173729015 618499554 600724288 820214863 303862716 949896564 997913047 571275095 812217554 484222496 808072626 242465585 340693115 725634938 682640030 81919754 360827055 616016872 373905754 121921571 911674263 24440615 995760668 753288785 412611091 82311366 704292621 115975808 956598325 283083433 200435400 692182316 622912964 981314439 556644063 914669286 729242810 938026861 1988182 116974293 624958407 558284858 888636966 83126578 455081163 355029537 406428091 715109835 649191775 58010666 828103031 599921281 209319245 609815728 812686637 348309450 35624212 261718500 540222118 249768239 897374309 399752777 361191456 515914703 203965096 53256502 321792713 435104986 140697976 833696087 982893896 707792920 178033443 715150124 988129845 727021152 644899115 158162313 440463004 12046369 449409223 899584532 539544703 958713308 857855330 880793547 301069137 364127911 74089243 281043323 49975931 112365740 190144836 511334986 92686810 26779560 939863268 581009453 117552703 982772076 44523317 125904498 911796718 13108320 194578470 553324600 856161568 198829563 589283033 113088242 396921985 712871756 801627686 183083241 492948402 890845044 622872855 169329079 944507848 482221097 338471786 6457548 540634059 349450293 948490770 426686444 715816248 155362805 910253495 249927086 242573440 674236379 831085873 674105855 432467847 904255213 983931920 278712477 507708453 179401539 816014103 728501661 89580712 987204236 309694141 757651430 82165328 692833930 531761067 582660020 847473106 318943633 349108544 879285525 402098646 129959180 800278032 849051759 618969465 273521657 913371232 53090040 538626764 630910824 593610412 922592061 443332947 767677695 521220130 808011164 31936134 663173497 638482213 266338505 314494035 456908578 244020170 169688141 546662810 15774301 908648542 674318082 911056048 500198942 916989406 230147992 618071517 795217521 403258493 761212692 850557918 908497137 65585186 548896076 869131875 516788561 253363943 825935724 367985298 356801495 399794075 843486835 103930242 974436828 599118401 795940791 173915841 334583885 766458511 61895517 116671183 904267309 579906672 575801058 347987873 264905489 301536386 495196053 662996254 242342306 260157081 639186714 213491621 878523423 641681466 710091240 650400902 384700120 817126689 137802700 841789572 37402292 750527419 731110500 847746649 806200748 639567277 829736869 975090482 797653837 13587019 198413398 904920879 244528954 564414753 77030547 711659493 310977960 156261998 539911754 343267035 592956897 26671012 181163969 296391184 167227585 99535850 286801422 534133875 733184828 183308442 261966749 997458026 719312086 893260739 460018351 404494412 555528745 460653736 168916949 60641511 962935651 840723518 948221049 836656122 656589509 529728946 698390869 592516284 273151269 47792865 950657273 418785364 75532397 990919391 232263753 253515358 445203482 520876657 200308989 474371948 812521405 559706770 491414048 38062467 44547965 257605874 531191954 875220122 577534612 861880434 204363142 102365471 433686990 386071465 516367108 576636017 107207693 531168098 5282920 396412262 288170183 245759772 369019617 44647623 305744006 930706825 558660595 991741392 977550183 590767887 310124534 980345009 926858652 558565450 553846420 610595087 726071274 913266824 6626639 117680771 591515180 846210123 550823416 164829466 720391630 539349451 446953273 218407891 504090194 474007921 126379789 471539492 889591246 927272029 7530818 377638774 663230828 82872546 132698110 128855460 441919466 83561220 78629943 242170752 785435160 505259777 481390649 534748750 696133468 651131333 738369060 720860487 228407345 466031988 789539436 646339096 598280355 935584228 754329175 807268192 466080469 757050656 612926083 221532469 716690299 550716902 178944861 562665376 531282016 271420458 679831466 711721756 235575522 62031249 819011842 559671579 259964529 872624119 679758928 251793025 793342227 754332137 61847124 205783591 198305763 670634284 126521377 331991897 256362893 899195700 495985055 574281305 444048084 869499310 160963594 196246234 43500813 510969590 963207281 384438405 974589089 382449825 136078904 629827447 282898319 818582005 918206870 133323457 335446503 959919724 979333656 623263463 292452944 457771573 120423708 310061666 97623171 533616307 974888535 588942366 311160781 957815548 983580752 743663612 245818257 300874843 757179106 62030161 669096900 489091790 965422014 388586341 592967535 855036296 799074534 592267766 964010289 598926704 731121971 217687474 806681019 8094113 244554449 184905408 300367441 435646952 124560318 344474936 240970575 640587593 619169358 113943974 491446946 836080251 160906154 742701451 26900043 546449511 699997260 416233436 756661984 815586989 728523908 919302529 995139083 892827678 425162486 107124695 600198921 834361667 627610394 221501743 700903211 142083797 573239739 354809677 342277720 335403075 999957881 116274665 678931850 75839535 496649543 775788337 505248076 564522225 495842029 948264005 60675139 327194386 815337351 807186874 832844706 996955602 510827524 149461016 86619572 250511268 711568295 93575772 529273942 189033133 247049354 432352887 433183609 556869960 792381974 787391436 721513381 335166596 332171149 241462710 734357617 457892 171702400 886504448 350670092 223584670 592416601 847013227 598964919 921812381 154119123 144668203 82082121 897574784 93702012 107719786 733914538 577964376 151865402 375892164 320123480 713264365 256373955 451518154 163673061 525171258 462536995 82588543 185519478 753013741 730326330 159091166 991520070 683296232 473419068 712679250 957842209 662029251 632030767 142274107 366833897 294801223 861218928 388765296 151023381 127054580 304822830 530273720 861993773 728872572 879391214 840292944 542559823 221053766 347345157 87961960 394700717 778431724 132878881 373936550 107341069 363664317 791317441 711395745 150587719 119758652 848371896 13891687 549450443 212331167 742380718 878980599 848285208 644506960 703650463 966366664 513649222 712017264 524854106 937665857 718965629 235041359 62940162 854515262 124087164 246344437 692084881 974553490 680844819 448236189 770717776 142321023 189258665 328942900 12788321 779662399 412669879 663251934 128849461 307886719 562585930 856809842 562200086 535482847 77537669 401025785 470709663 329863539 534511645 967946802 746407998 565487173 804226523 203442705 8995769 854315984 866956574 263247676 528772262 255080582 112438870 393958541 667360497 365367372 106171530 538573715 758835290 524204281 904644051 308330768 601196788 398465242 314789855 64147324 440857512 773691697 461935215 258750849 535294128 278124209 79112664 61895293 720369692 666246148 140666758 360879363 337771600 533464645 891412085 986100570 157405316 496940934 665285046 688922620 396691779 500518220 618679536 500858904 487538412 489039630 698436828 231152657 147964468 856678585 585745352 367090686 632816290 500140847 335496213 655135784 260073234 849946307 793164474 648110990 290242099 385841598 110316478 546991204 766375177 219630814 638126273 528818319 125975915 163022802 899293556 591324715 671326854 183687615 171277340 248419845 95097176 868982206 601614867 184708642 356919094 533655387 12456007 271273014 902159430 557385495 441666490 412758062 693487622 681182440 501466624 897162407 873221059 896107188 916077508 388637044 129080611 484986585 455164227 296392731 510654620 154113704 143389903 822792793 136386554 363587813 550181709 484059802 200601309 522434633 135995575 152870017 533031224 1125888 882439324 69137254 513079252 184585772 225040027 463341779 696015050 832802400 937901803 370181383 203986445 809385509 211273942 907380083 590139870 511549816 101481786 73448255 782897494 445587274 137801991 802643910 245231839 985320447 966906307 141829909 748982459 428892144 343301129 235518576 52745084 374279145 163141637 839754446 217354378 943001515 931160058 449150808 731686049 722003051 339245244 173629422 611807312 901626193 567409206 819068322 674599546 276658170 793662950 221251898 853409497 675001079 416024924 227435954 358750326 157841996 341287615 711254712 695306290 32854514 594444103 568940847 540772673 467864149 464456644 920465836 631691178 232927958 977186582 227359484 83221704 51192906 941064370 779313820 753788876 443494265 293242660 41284927 226815032 299757984 644028039 375785804 474958949 288883951 745531663 264554846 311060478 124990732 499538815 350675138 489613443 374730127 594632627 879839740 654010823 454240900 484230936 18786626 184530547 128193260 211984687 332246783 144611969 454678843 339825678 947451474 236652993 481770459 127604958 272832908 529251927 925788072 627536990 454343862 156179771 735331443 19838302 441796617 793221303 661642111 633244997 615514227 944093421 670969351 2242700 80016409 828687951 338549686 25009473 293564623 448200229 279058733 152112005 263546530 510611210 361373312 174688782 372841039 966145903 360872889 778570406 477084617 142889495 863479636 150058666 240012471 694547097 740954306 811300235 146466035 519415266 940181734 295840593 625847052 513955504 268999323 264598291 692346053 189923352 41890603 675762560 370480532 981167616 70303449 381106009 878732579 254253478 541445977 375134196 503372755 7433751 774680147 711788475 960403764 425543353 163228643 470528683 232498830 135368642 377831708 400251094 469769564 710693054 236691072 132471009 30887884 34441485 583195785 342284934 504205632 477236834 292583460 912097043 185478863 679774021 89958193 501048298 956754372 87144338 820794116 51246335 4825118 60152568 457378023 743883101 5857039 866687355 954846870 438543777 111488382 233964019 761069249 33450621 20463237 870673035 880886157 497149751 90081779 487077186 709661460 444007463 43157706 370198637 968163296 653228348 213276098 865746739 553737588 401690744 100422597 151595536 365865667 512651375 999984241 93745490 631172279 759987917 96241305 731418527 392295595 341648077 699558596 720167533 545399537 305430466 74757037 364802185 604958542 36776850 424583873 221178513 96737657 325775157 21889188 799903610 322277791 798483259 931471276 657515274 636081378 607022147 234754660 815153246 493645781 339288453 164045323 927954022 941507330 919674697 523694354 879772260 253743972 143990126 419511202 985565809 573032173 599823844 344773652 681436152 17171201 527948082 302321014 325100601 754855161 806107377 816907789 342404807 871428258 958115918 935462349 948650507 191060155 589583500 609395427 923393471 702182779 288262016 337646124 827485043 604673800 707113491 917346235 370904331 473224704 277256900 751704407 238040382 450088436 655718435 148034810 449785369 794931176 846937943 208095571 717582715 167786197 631052441 209954373 881507223 906290216 184742839 264864102 973225844 93960768 776878226 162282625 924681584 889133811 456497568 923260948 182537145 733510665 48129131 117152211 967856851 135694784 393950223 312064803 234194453 764803911 255132608 177426336 321674795 194536771 446151490 561307031 999859093 501876300 328662383 211374732 962418471 555310961 64516277 810379190 799763079 926040752 475203989 986359934 812937395 118955903 21900581 632914180 913941624 324725574 110583183 117634714 996037371 627245538 35691152 794800198 722837556 708264996 278380538 408855876 325127534 528673360 903497778 314675586 996852169 151532703 17659570 845833763 943554744 943823293 754070664 479928829 591082116 66335563 172536534 309403163 7135430 425360990 960682832 199123515 48247537 814174206 714891457 636204880 747949766 861865896 419635078 514703873 183437533 547795917 876929041 966734121 240543011 361611345 750161255 76003925 817772374 915317516 809669539 311324745 206473611 733985868 501343345 479881595 338987177 912120658 285504915 929988246 433268972 793640144 59387744 103031545 903210594 205504881 866552128 892098358 428151665 870337617 181204017 829841811 544990543 458309505 509180741 777335436 143806601 146989189 488786466 703888207 164102525 485083861 881222528 740782654 366425823 593927263 741266863 47017841 468791864 280749059 618043662 861679921 995291234 33914902 6130837 415510142 797558285 9277152 724965452 49054602 215703614 392762142 927292881 164718652 187807947 310243456 397754071 863926447 113586400 11439660 175990177 163132336 549597564 542234937 630727051 984166723 987869685 936250165 377974658 428765982 563461232 663252128 554584710 325795628 171698794 612212079 468902447 694617099 67153714 801253770 791286565 885179791 445347948 507238733 83555751 136491325 548794511 255651851 845170693 959456464 63384936 73304710 527024422 100876984 722748053 847338873 730889475 645459094 425627659 184092686 211611946 360869826 354101393 408650344 906180412 133765573 655797826 504133147 975306607 67440863 803380495 278123695 88746764 745726594 180058427 827388960 356614898 314800085 583008733 991596897 116263953 577515058 284029793 407637204 522389488 127142312 157646343 650937043 856040233 66323833 213801059 208640043 827045351 147659933 903875035 6173852 575519342 100506174 992957741 301314394 22496147 647582778 575845606 224353167 88677696 981254564 762501611 441065174 681382130 341956931 588593140 721041858 644793403 165249042 841559052 452900437 792401216 855249342 255910675 883193993 830069563 597201707 793334844 994707147 499141882 184910064 212526479 169538170 823658846 727772630 885239912 925897325 870433246 370855260 309963254 318130538 405452033 572303926 706654653 212428976 389806823 792811722 943719956 481632878 144543169 463262130 173938856 871415881 208740949 858775612 182226679 169703386 301920379 985009389 560775894 229499694 879902114 329050617 431042284 769970500 728058187 436156877 129643829 364581010 417728397 444396422 999113599 104242561 274784656 587137911 729241072 611586796 71718930 895419303 605809022 635655333 600803301 489206864 174399605 556541425 339819119 595372130 67777781 1555975 19166248 205549053 90256242 692811412 453003551 890961659 831939890 824969273 584878454 293629284 502126290 465051916 450155489 241114103 728957122 763867923 567741484 980260520 462985668 450834636 389863858 560230684 54568817 704397224 758394854 242359599 131941556 268060811 646435534 339618158 994023501 31049806 260370306 165756829 312412495 134727229 658112690 444758835 492739490 271043226 803307294 783244249 950144642 770071320 840077851 519223279 713180414 807549280 302179349 281861383 795955322 809809807 858786055 781692008 900287277 98845878 675972356 342537100 381392036 979518297 722009778 531966626 296164925 940765681 946250698 315573005 126852525 81911146 168571802 856850402 11068283 522823589 511828867 546744942 807794562 177099767 31184762 392005295 832429939 180624297 944190603 424953302 200974672 936541814 186533713 956377803 377024498 42923280 694910592 745215656 53497733 977900442 639490908 175891261 18746887 540713519 607747135 861178251 895624140 999732570 731287831 105267273 284535804 670931612 31939045 176369763 238131476 524731626 142401343 31838581 111755617 765784364 78942926 555940436 585067400 487153343 38479313 175517061 131391745 438862836 939380121 883903940 693349527 276360847 860469259 197376127 922649834 536485448 553538593 951735385 750170349 989481293 199159913 222241703 39943784 880803519 455795588 763524854 198530166 40817968 13939880 305207683 468033544 323699499 126089247 330567105 293159521 548034476 467896262 27619799 850424217 731698852 903788431 556712479 267784474 904315255 482051071 172294057 185951270 226880893 966145712 821829302 851589198 909823620 787058896 204534589 867458556 221162828 989772193 581517673 436789483 99113482 959002871 576769048 513121961 190509286 606567357 114969438 198261020 19261564 176323184 295930624 455287546 789706335 633787298 567663866 312874063 134271889 677159032 770249210 785719035 176543501 459931949 27916770 755447601 183090238 953005453 266044489 401513978 586502533 385378171 504068347 697232304 142854838 175597931 474521205 786664579 648095131 863147752 992682090 434302711 877511792 207475472 236510784 914157668 92477541 738842387 443937171 610207605 692979744 970026679 236696242 973814442 419167800 383301335 438010653 623220438 483453371 754184671 143137293 143482273 527063721 314444882 61957356 492639239 545961590 350004036 572747224 447161047 571863180 736679649 469146149 197375796 374474950 423630052 299792600 386219288 732485111 777210656 382689580 271115724 652621409 806660091 568041745 100383346 149718078 636402926 180693928 67078779 407647291 534079238 661804488 563630129 460259832 190528870 637365884 304323374 351607433 425931203 833597827 842533091 696462584 66099430 954171343 587641619 514901184 299572014 620163079 738959445 327773267 149511947 116537604 937498261 516319126 836357508 813275223 422284179 532632672 471378610 55413442 851228514 452087550 502655043 647990459 558025963 96615090 657690104 355717356 484225128 198811183 599357479 365349045 700132329 402767391 101341753 476988073 891432914 359566749 418561325 786339084 817808219 423042236 478568468 651889756 385186063 991216894 206785683 328017349 581903693 784526301 298017124 513126315 756280522 220186437 813977813 290780708 10269453 615037464 81663815 859408251 144956658 930846889 563144112 802226863 866631464 258980161 797252634 812871153 976946867 207735454 686888994 645500202 413280618 139004527 692502393 389612146 880537210 277069273 689731174 257526426 327600353 266817525 697009731 159097251 170629108 588998223 846293500 756255557 750348761 94782313 235696275 850455401 72440846 981608246 261132190 43082927 533296096 672933791 941190087 584156393 252759285 626864385 938916683 220394398 55161795 426738861 415119484 916700808 768735766 380437351 106337855 960071702 520696206 494003176 880928911 799822315 936127518 389864796 174203640 61666141 558686862 35400677 824855324 658131447 405341434 259404054 302082866 577879543 781830994 837235320 812700802 491418321 557936088 103876616 637013482 982282154 139936164 881852599 543425116 573163997 995194147 622929641 458883422 529722746 576016020 980139255 893378440 156440514 27451018 537403309 683939593 54164396 811336813 572682444 742218787 937380452 142774521 488133513 475158955 865120710 213692092 567462156 360828810 323489511 789428892 419542258 162046270 692726925 375778384 371243468 408430681 249719730 118980322 914727838 820309249 55803909 214582067 718939233 298661999 235244648 839470199 319668353 796203376 864369523 104707765 845848927 163537639 716427760 454343496 585500112 8984137 652311901 780355936 227723932 163897375 480593005 789173890 471201536 498253448 747335559 203443460 884919596 722952116 816985413 673932946 239614150 420807786 899537143 418772652 913650534 566827651 637052702 385752357 371371288 360902508 186090481 549440678 426503901 968230568 995160539 656661801 685118762 995240012 5084154 999553662 862319719 131362178 213051554 585522889 740536688 282994950 527649240 431671042 472791576 671620012 835190744 927791475 686869410 697639640 443395984 145233982 587313990 487951108 732786466 80353237 808274098 604605502 723867238 225809280 106435718 189885607 282637157 699357146 89601239 499488501 398076639 129328468 622362541 593754353 899160774 499994289 831871876 882109434 239302337 509838728 508064207 723998081 988505258 612706502 361428848 546527115 813965072 319821609 869436226 207985970 467261366 232792006 372746384 35820836 328975378 432406659 511575450 530645538 239769551 687227038 136894999 774154626 191783755 643972900 306882990 685465518 610498074 318795130 441007739 745175715 628789633 401094104 702975377 30104691 627819772 59171274 371478386 731828675 560497848 950033581 759004825 881662030 869515289 164593208 796849136 262291296 565078070 511828720 439950682 757482587 988142680 449708722 454361130 584482102 199780479 533728557 585483690 343693561 152687069 520695397 781435798 564335682 981912408 425360690 447503006 287758275 757350924 987403199 923617511 922799297 982773703 691191819 246354571 359141271 217843084 92619883 737277460 581723697 316054545 583854086 310837509 641712273 627054656 342938968 289405521 471224142 996244409 825025199 468646626 910879760 957306191 942081201 319964179 751566357 176183175 198747348 109527095 758778543 101079836 225184741 364682512 388188100 414653310 623237762 398263384 84175437 984291662 67252640 229441596 938282199 490851043 301218565 427399131 806003717 22310600 145823694 93788107 881666827 711871035 831359723 644866709 169805877 27136944 260013470 132135732 496580446 903442765 876075520 909244314 450881145 399386987 600167292 632747820 268720140 946938139 685865298 747672385 160082352 924379294 810533653 672117670 443409043 881087468 113983790 625288989 692513269 582966063 231492951 374279641 472990126 737285445 517766944 217306627 555547815 457790017 333694061 93108281 828007772 592103913 609426933 529360393 858493537 71450682 342275525 413428347 5346522 281278432 52163516 359199876 933354241 122513087 558829580 466535828 363062947 21676653 318772671 246347273 330060707 846150837 222630192 261907897 237266038 153194005 565804174 974653037 119776422 338651712 651373148 807944288 442605904 195602078 130827252 98577604 31057829 946048199 116097535 370341437 357429100 442488588 228112126 135395684 304893311 865687790 501454277 525575493 983215177 367499172 603042298 396720609 47965775 512628378 468438682 462649517 485751460 409695213 500294261 313665809 334152050 618298095 400948909 937171179 387121272 904024745 652491579 868064521 692279687 258704468 373581162 153172402 371217156 232933855 915236442 679791390 72879722 664802413 407311230 918878713 651314885 99795668 95825695 815117284 288413495 106934814 175426262 576898036 177856374 135751691 167388182 89424689 369174604 6947726 238955680 312965400 130633750 967826252 127427340 243764250 314456390 928125984 350272839 836625435 652329186 519717274 95927055 899628276 493785346 947870843 390115961 576090353 112721749 767134010 821007468 637395795 724330909 663744130 268210979 334578894 586368558 768793010 696501935 368553485 746328691 781004635 60171123 723598890 42447721 899356614 570289318 828627766 257307682 243319148 924482773 553687735 435151940 938844539 256452190 24675876 771972232 591438936 678756341 302253931 302393147 247569943 933072675 302477676 902427328 531725061 821298370 600068220 876199947 644091935 14530434 888983267 33024295 580069784 465611880 45573470 744340914 696097623 358652746 880050589 7109980 474774390 568334676 890278598 609175660 932632772 17022853 212972528 829195322 568606020 358414130 871535273 414969270 494168236 365314691 483867505 85685728 570894055 779800817 797721149 819319373 494206100 741507023 767987445 765608361 457630596 648745150 37724150 783387695 488408383 363455030 431052944 146202163 671544704 350648836 537208200 679320217 113718965 819097542 575669144 718885723 260789888 49928049 71238123 402999302 802674744 550964684 515591329 466755645 551544681 681044210 880639313 648884277 484127312 955482836 977008002 582990648 47467615 917711285 492935472 639532578 227053759 744687276 813993806 816290791 812656329 453825573 811356222 282169867 822494348 596117600 318477402 542383912 676100939 6753777 762389103 635454828 965596668 961439294 736794685 355119896 855056841 744682500 176808696 798274306 244305555 598286803 240103882 203882260 449537898 6663821 133167183 747607754 670219030 292450283 5922071 528555960 589124242 182753528 707151911 455442434 706246027 90529428 795133304 41585891 24442085 579193842 357919607 777401638 870993206 57047322 619701123 15686064 15037769 570203496 988471923 696477172 992276637 195215883 719391501 642380925 860674020 962868359 959734416 860745064 727250308 703507763 227605803 371772135 835267097 894771132 431928451 665211839 816817905 155124640 804613681 495594442 637902990 535528628 172192834 878160502 72646440 70496671 253409205 16240453 792045353 417456732 72502529 346835019 644633007 755213500 241599116 875179187 620754701 123292386 96565 241718586 815064394 335420357 243694283 897729202 475528864 519562673 653222547 795473025 449455614 909775046 594891718 323909407 685058951 293037432 781074960 630299292 181869329 677696781 337170963 150392599 653857959 466980386 109616098 121811272 219442952 201617703 399597958 829966071 665040933 926388958 357144956 387601282 806886822 604222176 501973813 468552284 231179110 404766744 73911701 429661576 434512371 446812997 509347701 117759010 440559375 801950589 925245474 193571542 512991794 805366437 243579355 670550119 81900293 212614649 585153110 646361130 697555944 821603979 79949115 904398472 282910829 903749563 335312040 99096959 253981658 788262852 363620779 472354082 547552684 659015727 339357387 679931413 563215887 613852254 235783808 818161681 85904998 978046979 850686390 952845926 746035145 943604133 966657615 705281652 605296514 151476002 553876382 149494321 880276367 681870376 127255788 529374374 491248932 387333818 606463478 386572402 729391910 226432945 906819949 506635845 509238960 234652984 188301173 949536102 463283602 819203408 873444390 322128942 413202637 876435530 231574542 193808011 676752152 487078223 276931246 207868542 147966302 670989019 959439096 996326045 261212990 259455806 693347288 497590930 973669258 900643610 495407272 905152921 223513288 727003624 163042745 262821126 673930676 679331443 83735249 742524605 714659260 689052506 761421224 760762296 465655170 732781970 371571818 684033157 214938974 412473571 287184440 208861637 937035738 509283430 25268134 699483311 177413684 569989389 276432702 392137610 247809247 410698267 704975356 923131958 44630530 914088872 799542225 959434916 482031607 164503838 844660257 659331417 360251853 998518719 330540612 616443888 166888391 433563932 415659528 794904981 98323931 621187999 498459181 168673162 60547636 691933954 563487976 816919461 943043505 765370070 964843617 264248528 135741539 54846206 56787253 719409033 323564051 628953649 336049396 737625183 819638969 141505147 881953444 712941179 241324294 498158012 112256828 379366420 326317275 452743719 527327786 102270202 200909776 880113861 996416462 856219404 305963438 712453104 945194492 417687746 729652981 392177112 966087294 298117028 395560279 668125441 97333648 397018320 963914299 390067907 538326114 578835320 189536059 504722889 900035482 14448482 364514470 680214675 725219279 640622950 698120191 880325620 115472911 523420148 662953084 825065364 246669914 280903051 121913736 419322990 636562468 319912259 569695041 497324883 305843927 213262660 471697146 328699750 448256591 47976781 187378618 544636575 223289692 745514798 798719164 659251272 37222467 232940366 855778285 170958723 904635197 234117413 467466866 194222529 155304695 252495811 184243487 966950220 76013841 205492296 432599296 690906558 236903071 896717929 187085268 113656968 272666795 478610162 76799629 75632492 462141104 114570814 348428241 593973508 192792353 248056001 128911484 7648569 432712672 68048255 602796060 965748684 293017287 443246226 238696307 700384976 566493219 447621031 327927033 689171757 597918003 285085825 59315032 828060959 845446318 375072629 80552942 914865334 320949562 580176365 136979278 280478804 857218550 463207142 615192511 419459378 959799025 471399281 739666875 262850522 193094576 538380085 159207538 506819758 574987692 409156331 601378885 688506976 959204561 786987233 234394955 439694968 54556673 578485624 374563791 573724114 789368207 939697062 684432591 896016669 205596101 600912757 798818431 684127581 579253598 175346818 858563780 713356905 346529292 36972159 678596538 214831981 112089331 968691633 727174703 898764650 543410988 237391730 474332709 907419057 566030915 479573680 465333588 568161388 35764410 782678124 469283237 635689237 31243396 72577085 531849144 607862013 480947594 57857739 619877727 432756167 926147114 482157140 18532385 129453546 870478770 273526057 9087416 793742130 933532394 544666162 786231443 5903679 338752135 814710630 400819285 325791748 844308409 122224724 622096980 827985481 702510750 383849630 176354843 921324586 36271308 799085176 135605224 47977367 65099723 151747885 339481390 146304722 689727384 933878682 368092948 394808563 482647332 384586930 81329909 142077543 201277139 495017976 855306975 127539053 595043582 472527880 668388884 516531352 282404977 395820814 161137035 433121616 179699949 846678349 582506095 884378704 689829287 979291033 340892319 965869609 963000775 619233245 635058477 688083390 274327787 66623383 539422943 468814534 288310689 639387735 190197425 17086542 511632368 285027395 747661393 190841140 859731408 88155286 528760994 24606381 26139053 950975517 165131834 605349568 525348584 621631928 732751331 696435400 680205398 850556639 307100445 987325941 602078911 197621786 393990811 888571340 729505120 630487432 507884738 796268707 966180458 115190617 759795757 647809062 2908544 344277076 642939435 595427797 234060861 71831122 897060159 699609987 52956332 49979585 10178975 667192792 103803342 358360354 16651703 2278096 700574744 949451658 965083299 836054075 434216946 932349221 713088184 945628731 224455737 770968751 158430715 896081864 48365245 287740665 322536104 442992431 933567684 820614506 156211629 87182479 508499333 755396219 202301228 364578907 994786990 673037370 96253693 647062491 488641247 612000968 148141353 316403114 131837485 28262619 403008112 447487545 366895776 656786493 970985156 847303243 523937973 968137803 639887820 553478519 609509852 514772086 663901538 623072938 661669114 12302021 984899605 207831202 638315753 432663122 331884456 893371508 424307956 93933512 214296977 143485958 936809820 613367276 96532859 279446677 380162517 957326353 530603460 824662321 200363017 588651682 833641472 307749692 973676052 647702428 125407604 820277487 652197638 295343376 615625627 563215317 387825508 957173158 719001253 787315022 582529960 3276565 731858931 528167182 98409660 582229164 277292700 830215579 101113987 584770509 953324 603962578 109089873 571630188 698217952 953458274 848162157 80683924 760905130 825160271 486382998 24662498 916972595 875973489 960895867 863303688 586423444 124301810 614623042 485462347 152378524 389467092 251315970 403566086 440289614 274406249 286634824 438702117 856680799 180370905 185288086 619281323 162220988 705650591 941950687 83245868 72125954 207740172 160265741 782889043 890889476 251920579 926685820 694792798 686708041 338048059 791982204 472854173 739009420 997477953 854313426 43057398 877849402 649504115 43958839 25348196 944386807 306273989 562403288 912676211 428941081 81507840 485032404 442768070 712022059 159234622 905471170 212352914 832976748 694246512 842612008 101258784 329009486 483144664 847370245 283365455 770914295 278819471 683388232 135732239 881185731 734149120 444072534 293593575 258319296 294574955 41517192 705968495 708291632 517408867 415873962 877104087 281401611 993926993 253255806 586619487 889210490 780426734 400046391 820211933 891256669 928596941 30459902 135845434 416198086 336861391 594401649 496406261 315862396 495083436 574273311 751891870 644366457 400556657 423017485 938693468 32417132 961226492 299520820 678292584 54306360 620875138 564307968 140898960 589497459 827571466 448094930 116644277 574304744 336102384 729822591 930227789 146609430 879188579 453184976 930992097 246632366 432075494 498424320 105054608 22562072 160086739 424254785 842787979 262580463 293225171 802719799 49194647 890624385 829987687 576340859 780400270 20911184 155125603 115082265 134561502 346679955 329025133 221230098 975118856 516079541 231262082 857837787 565538 531404245 683873650 52823516 685780054 492745797 439236447 319051507 370733921 282013196 197721922 634074350 586540565 581670500 613120614 368907284 284910807 715147580 589565931 565016221 344705313 750463414 30190916 791699765 211967489 328083626 482954937 35299709 823278744 911251746 644335078 75303050 400468125 562010844 149110330 988581220 920793304 148012747 348782969 772002185 864705447 579817366 905881147 983896423 759708028 258905624 926800491 882068197 650987868 816778206 125658056 841275867 203679585 905516460 211561575 491805333 25964346 539573753 835844399 559268948 175764646 214981486 348821083 142707661 427687932 200992106 630559228 64964008 519240871 520398465 895455861 467809538 399707554 283122424 684364029 414331883 379574272 791762251 334103072 709828073 318143846 719510696 239000127 912483444 748297871 41455985 717112843 927161207 195922375 385383358 750705422 720454101 6005105 696457177 674749986 128425442 39988866 184208064 928123895 277400550 341444355 635874470 67582866 209380510 227942546 842770290 728140488 484762043 580531937 472277310 255897287 431594080 244344886 202470105 246193806 968602024 824689130 900189254 571853168 617954589 762278122 344344379 241799574 687875906 211781177 524781987 124228217 269915659 827388780 132786716 31867243 554035040 642886956 912800378 127351311 56346526 517461432 731490882 966760157 519238677 224737120 186252080 356512672 246760843 668445451 604555697 166567415 26654903 21271218 614962538 59146199 146808519 274695139 576209839 679198215 771528155 641218623 882861068 287709346 497780103 613500411 689814720 625681305 752085333 554020963 294572861 567815983 126079297 52100691 571622058 990824059 45226043 215671484 417313377 119987689 953268904 173562149 55894641 67817913 692234466 606072359 309561885 494971007 638470067 586763760 942560346 707856801 160471774 416140993 850205269 520411612 611513238 108705648 408137195 79350208 474950917 596226535 173785648 100033071 193749191 205917091 827156969 442129634 284176236 397739062 356147729 804132068 656803065 204814789 293473368 54308117 742648167 755120010 154893727 505370280 814370083 458781267 819221629 73298341 350279565 275623681 5830589 447904104 228687737 270756106 91018462 347222304 142998961 628036856 305226386 484425809 89300848 978761960 152003391 536102226 434502888 124125452 230274945 472029648 584544701 822669865 146888358 795590473 265354121 857032218 227001648 295128978 171318870 812225099 26173783 120078162 678047527 512495166 736190340 408428164 800417391 357468682 235850455 774378745 90576535 931449559 389880227 357631188 970911869 981260131 301683180 244957452 423985136 632737408 276476912 444150765 148083253 551800211 278662299 835897751 329979013 413300503 468130833 773973118 820932748 458175256 320900648 606923240 349431020 452458425 618422507 627364978 421343672 2902958 44582168 506293388 237275385 921930434 233185955 514601208 693348653 369461843 107677489 591442767 46010818 753261009 972661406 691099772 843646880 302866243 540721015 573402430 201181596 32850881 525162881 82558122 609583878 811560955 352399920 326320296 908266012 186622128 102196017 209708657 454615188 165502776 596561632 219686167 494974486 945782779 174158546 755031549 350166208 255837432 417745997 812417883 17491873 523841599 149489867 701818043 163764542 797134455 459525243 487747967 717209615 121712473 866448576 187478873 237731075 309552690 19852464 238723280 803831800 698415205 219557782 635727298 711269444 983734247 680602480 441185756 808500015 419798466 283428209 235371812 702935158 722876050 515601536 651090032 856291530 182565131 276468152 968835052 392942671 263200369 757353702 821328280 860995357 648001310 584091406 776653256 853199811 260488959 376924391 512751010 144895423 423161367 790436186 812181923 671172103 99028732 786450438 980203035 722955139 288470869 662201791 104639916 528509328 444694626 42534667 526619599 176867454 873010036 224380068 738360655 55034899 987249264 232437241 590798539 340289031 146138192 486679468 515063096 701701766 717522850 925046293 384009309 897579185 189099271 288256445 847891798 271915293 871778229 897066980 476283666 24858706 918386678 219692285 88134869 837638477 990465959 95007532 951997623 269719038 272977594 186501839 100533794 617921483 808202676 240458994 762773079 358205451 82311215 460758489 5527786 765303948 277840729 433362298 885258306 845500430 287057524 680567808 601497114 490114246 869084500 126382666 211301891 298930908 741333220 593647209 737286624 642845421 656641953 822691365 441822824 455776393 704083997 985781113 707882407 331362486 579107197 349630227 2001277 182813291 733051388 859150037 358994461 218016022 331110246 286236247 566035600 90137879 221948829 753545058 880027440 594597954 271167768 899051638 478450221 819010145 73375071 297173317 592759307 465980848 554361232 720992566 196526626 936714079 135292125 980988387 867078429 587001876 997918476 516679067 605437820 193067110 576921334 462903265 294510610 823519075 898481928 173039594 661508743 47122699 601069509 168636195 602825174 28698322 398898753 850920874 763828432 175634978 491613864 748337872 614789272 222704855 581758645 637649309 29732134 219249089 512155707 653800268 422203844 174704933 332224928 812722634 355859859 988623165 31766621 817779771 860763655 195820723 370936703 791496054 408058215 358176554 6716969 687028868 155882318 507672501 209079312 472189732 204305197 61519710 385411069 222948426 186888390 283825057 862692431 613015708 327864498 499036910 180960630 855107316 801316573 429554474 551024249 554066657 397191429 660829742 206761841 743076133 815957822 532621383 948766220 762527800 991590512 159775412 70383627 676146372 973360855 445737516 374251460 57587239 809603 863872341 917057184 133932276 535637974 875284814 422580126 924316018 671998473 902087718 297803215 197165083 214265766 862102370 329351384 637594142 381581583 536779387 880402291 667489758 603650806 600584030 419703278 297448817 669076195 701626602 552976042 828532514 688846770 89643893 596602525 21425648 190742034 985577800 707674576 259501581 628950791 324508446 822057954 910865759 552209512 687286953 23154308 284838914 299736417 560550157 45374971 177146563 509534963 221609315 781613474 827911079 957688943 93899064 823460453 938967138 975678975 665040651 361150278 298952417 47101725 54783186 742001115 795944385 910016282 956654197 888883918 871283413 547044248 924681810 64519260 575121827 516091152 558607800 805295319 187589096 123613518 591423340 334289700 893139472 238304752 15953959 338165566 560100286 388144362 434546965 509764785 573053514 766459652 881443415 66216223 898732862 643745370 89366402 270506687 181627609 102205659 980494366 407261401 673542796 84228812 661959209 963426379 141556095 950889794 326517905 889431559 885848845 299356843 580114877 100475794 460001603 571801414 378854917 182841223 927126885 877247398 944968757 82800658 279016554 259586355 340717583 955736950 556450171 53027496 984445637 624702600 21377144 194550422 541865859 112156465 677015667 386228704 854685667 364398319 523025458 852701757 941174902 747858772 193745073 248193722 104027970 786968198 4863390 88053813 291873855 796408766 306520028 484321763 209643481 119088073 637844992 306728394 434259313 353869194 628874967 752517448 164248540 4881014 865379294 727269770 871193058 715473686 290887624 541426198 225279168 334159752 419871996 379918146 924255911 557444095 58745877 428566714 861547835 257454911 495666272 564755454 869351956 379553569 667388513 560855265 822630208 768137493 11930190 971974155 139289023 535270043 710854290 35743096 1127430 32761289 659453516 979861240 118390909 433273800 278586317 652348589 789231105 235898199 805874974 941490063 639880802 80528199 635630712 561062379 19995366 16038141 374531273 751541216 823445188 515433203 47610934 612744673 512924074 703536950 667514003 27283254 461359160 122877929 200553453 776593018 304971395 882513345 976640257 860115998 887056019 576160392 899468226 898736357 642565349 368948635 751965654 799194214 134381801 131862124 11266330 179052430 155908997 737913088 195646490 775881499 930665872 495976049 576658586 253537825 688028248 734151021 274950672 310865033 198055453 915340981 490783782 732438925 203989139 897161631 814622525 895294526 633358692 26074773 973683941 837720062 635705516 490367380 28783718 362880774 900757883 140441262 383130939 737018081 11557463 990191752 418922898 670099695 725607863 260709085 827143373 491806947 544246921 491873017 276413955 528142150 917212332 850631742 738214527 392890866 713955191 831693986 786643520 396527255 740460593 846264623 359502456 71886137 350460054 247634050 664044558 257031344 972741464 700795213 744307228 637533990 380994716 183191254 798103665 701951133 987070073 537162101 702960655 425574759 839834493 395649818 76128686 100028588 906508583 643062212 620534328 638758119 278836334 424276491 514888011 760020585 642021432 118436247 118211514 239423445 639209444 480573350 235065356 660308642 375590849 649441162 815859963 153698205 236855188 709741865 159356919 31801700 467932950 404894076 920998305 903601899 656094324 34609936 867851344 888578043 534634701 796606600 624801423 575741358 619942072 847851288 661112733 616394485 877034683 602431244 831154667 128405778 237014997 185245759 52218274 412784670 119234549 622198948 609199387 726982532 460640384 302640833 18074980 439096452 476798159 986049071 593768130 265002161 874054318 897992219 254748969 60324979 87296735 718259144 734696134 696849798 287095189 838147339 779801206 566054777 647500537 353726670 980652108 396071985 281224105 690227085 389698063 140357219 950056244 825133020 836307897 648922141 444969631 787995870 414706681 28358973 645522659 554128079 576434866 570882552 262165356 38178172 497489274 112925525 968096411 724444358 109354524 533211568 91691590 74481955 59852054 924490552 913931827 97801245 205279260 351989872 327619232 349632721 260416147 982657713 513364158 56159856 268133399 903711399 83569969 393858241 115465973 936078032 362621586 439678109 829795505 858577921 382624237 71794 298925698 326926816 998827331 400521409 310847441 960208746 954344457 242381473 146101438 407938415 578225576 922950713 686812827 3936017 444894715 951099721 542214254 746087497 244374996 332272034 489491315 676049506 353944950 693092265 412012952 881825916 491094300 804313816 961353216 743573514 762537841 178620477 267320705 328115540 292249111 507159290 477432614 268897270 707339296 125440707 481490093 757556575 103713432 413913699 5988105 971220819 87087865 877622327 691000033 347302506 827156916 310666929 767558416 603182735 787338927 760758998 24182563 884801921 715348930 911282881 449097694 923517781 7228729 159766558 340673463 990022898 410171989 785170607 510363481 491723923 590958539 956885707 394933283 905950793 503100995 670399450 933485223 379318903 652348122 830083290 727761707 976793684 450489760 530006237 146931243 262280812 606076443 59127177 953892565 825494815 970086339 773845398 112670091 439988513 255822468 486527316 410230373 255089144 567349567 95982882 244128684 283532930 137896008 316500984 326883424 645650284 233903593 400930782 5782195 638514107 164954846 776081523 907401868 707177799 915488472 33121127 277449734 502313275 237828346 973489920 757267438 537027735 887259743 436383385 1505864 988460718 219238034 215967007 784595658 787390376 739855380 100830099 226208095 458784513 984130777 753058698 452907685 716686856 945645259 605734320 766876784 759139425 430046278 295536704 604829765 731205764 307553946 17718158 515280863 963058236 364966541 378107517 734183854 176407336 864601302 338357001 321254227 848954173 455286947 759704767 508617766 919445314 192562708 444019520 743594416 871055186 602092221 645981890 668510257 323821406 795904040 471132302 268824347 589995433 4579409 245093763 524021652 15242570 909064232 97839762 99936505 605542573 842870290 781540672 894883158 971193362 287523433 144678439 537054190 31195149 463015927 610211701 47152057 879813636 144317055 499906923 852327393 11127476 963297077 492136159 858996804 234667181 152321856 26206650 987747317 648209617 37509695 908795259 134264763 842787033 630585025 771688371 726293649 785721296 752293579 211661447 980191780 991156374 87544919 804156721 704881496 540901470 131649999 913464959 998949572 24325936 814554262 165679955 163275057 85941352 185036159 132369185 673682462 713006901 628745556 123669108 150529087 992778523 576388432 152385385 944607738 837346929 463787429 36800049 199461352 366433508 626195448 583651220 473322842 383959538 534544864 775761257 755312850 339049840 730381162 283229471 5478021 898875909 758241688 660166712 22917344 191555500 223756509 100060872 930436352 409933366 567584674 346303482 434803000 200134 76423877 664979595 814462351 427011923 243777045 732226381 584685119 554860329 624736983 742286246 583945272 417682792 445994564 822844430 703749530 494569092 162379272 154059925 710069823 810806723 452722885 370846042 57499695 393605058 332222094 30544661 720120873 282990833 604128620 597352334 366442529 821925394 307557341 26890275 512477116 545247934 955281232 265793606 450642133 59669984 747048618 161054205 10207228 651114551 931897028 977576545 4977906 261718232 974162666 541355551 916521263 957093291 407600477 932560378 475827292 343466985 871006674 185626951 805998297 697929892 401695218 611956847 893908024 500147007 843942360 51331440 438710720 92457458 145783958 744782941 538483947 729024583 593149104 344797145 159026664 366759328 506109086 825067936 98143258 123706798 585508175 858654463 923041942 785114363 151989409 68500823 21977769 543724898 18445290 793099422 348849744 187561617 984245362 211906013 30996159 896187534 955957750 3493811 908120283 211645487 127159079 522701520 587534783 172017568 49042985 878022267 847243579 585361121 60858133 985435917 656756304 696228934 58081399 543008372 746244021 396220149 269084624 106098865 168135253 90863979 474560533 705938522 40034255 462515192 460987438 929162009 817151221 485094718 863465336 816607274 636513357 928342710 853097540 6375649 777150611 637420843 88422485 68285218 826534709 774296380 646945638 375332327 888407766 483647966 19835298 237153214 884739019 690483928 138155050 961729352 57646241 344776006 322263443 752361915 38109333 666635799 766044773 909289825 502834714 639868047 484105117 706018327 794458967 512749765 515743019 192177615 53480102 129540646 408944245 693508366 735231255 911805424 5059794 350741359 419011307 104611256 994955280 605297182 883283481 421962725 804305135 205866589 353178316 151428658 826795940 98554370 406514146 356997168 236329559 238509047 296828783 560734145 311751589 109867193 260030776 989499295 958826782 902766298 766255929 211649491 928419784 886991744 757913631 436125758 964533402 474088675 923636687 417629971 612680962 389649106 486859229 187680603 145597280 899550511 459680278 477106544 65229193 530940526 698870519 248311682 396399428 215012378 206930483 224623125 698391248 938288977 120441136 139442817 913945949 338377027 369469834 188119409 785968526 643103670 612493199 619753828 40046589 761593221 475045058 95888175 666384823 801078044 49050713 707060346 933226684 863512830 546384831 312012350 252575872 237395008 133331218 305028429 336880237 739282187 654968742 63778506 524089951 279994653 990174336 489387181 962962726 883914825 820436187 311894080 798425352 712835826 794603687 927137444 380536380 859822740 940425989 173432141 584222575 926961212 885576396 22408322 192688707 29262602 591405831 114094558 840099788 714713782 107084661 459517138 99801361 390476809 334686984 105646880 238130065 825316191 309537894 623911777 160247227 50727724 843288171 626465665 240954228 150164084 459241637 839673150 431289493 174047568 123837399 270785196 256509291 39884144 55073911 806965939 489012022 154429076 393196847 476427151 962551466 825209618 856083807 483626832 350479472 562450004 991566233 922354264 813400998 878298966 315107876 510742495 339752027 197221676 714005883 718979698 869289492 761386874 816407243 919937648 961798730 239728378 147879544 460205196 452142826 887377914 15130264 296653390 994464979 432663259 554277238 598150802 350583387 903634579 809263633 238058503 478430667 449140012 313846426 98701744 989112798 610421827 549781754 36739943 277481542 301308810 748970825 606513749 929926695 67576646 511682136 609571708 563936922 289555153 977580584 985717805 366075692 929823001 708578417 981960338 271838812 989328671 848529180 590607909 738202656 939417722 797534409 923244087 535601761 176689105 269145418 443470442 903993210 960604004 193581094 647822647 988022461 656921476 724230423 675076714 807562478 773500183 471718540 778892192 79334598 1861653 270881832 744534736 940222321 244221965 156262721 405009599 443076368 732143265 890374498 848248714 400384824 788141573 435112649 719202592 600617330 348022148 565832938 831331270 588779449 881393659 452581098 471877265 222650623 845911644 105236516 965408751 504096680 864750125 975674024 611254303 317206028 571120646 67329463 761827764 296451833 203801111 936212552 762575894 217814576 370527391 621069703 220086272 465010404 544193142 481270096 290716163 202391614 600094596 407246520 604563202 690412507 467664711 225350789 187371700 990032460 958222162 375112625 721497126 283059604 616891848 455511531 745610806 262074798 961939941 174267413 422368793 197581573 375757941 692054727 381956053 551025402 807359579 13146827 630380744 981667426 421121804 752853407 472375327 810017797 623926545 415851510 54605664 343849248 727349897 796506679 640683745 945258980 710516644 854946044 507051086 697878517 208101673 821731221 902058279 212209387 734298353 690722947 319217983 884410068 411477097 592605181 398415678 832732848 228233492 422028398 435988768 262207732 891081479 91030772 489331892 510677000 391619436 735763939 564073503 696805577 87064319 493496128 100678742 784904967 716058772 26917191 33921959 529765896 477648271 894275302 709847089 801454340 713632362 157378111 350683751 712679846 358243123 394951978 972243344 21137 42478091 635143600 605349962 550028249 854130600 677851793 272061699 954782086 396042196 66870719 539044991 330832917 810631659 620891361 630778965 141644534 233059681 279276497 178542962 723482383 583719994 357977374 442000532 452215095 74888080 351321739 125806799 364911804 755551761 759441806 91839500 592071646 603019391 464283602 607025029 571241553 232041518 889402293 936820811 194173887 333102472 3573963 54533056 831250500 375433868 380507737 289314333 768696048 484265291 945050587 470192877 263466569 546773099 888843134 337743248 864594118 917091748 737013414 308972985 622048085 491568197 542340202 793783281 476206550 282080687 973080595 369030162 523025309 149031897 606338977 645153740 436851700 386621899 733273670 292354851 628831382 361873955 961466088 90020079 124407350 745460115 656535715 862176602 679950582 938104160 704572229 629075046 826720496 314263013 468637137 205885541 731054769 834048270 655563517 117170815 878824888 846368990 596032947 836256559 110173436 749745129 607270803 255800006 195199843 395100634 309721968 487595495 999382092 348863983 295504847 832992265 797441030 965159800 39328619 606053369 700918870 447299163 40033204 766795861 449588981 768862099 492758346 370006545 405254672 241607596 454855303 48296694 2373319 462866249 235823091 910222878 449092526 185049503 479772365 637331578 205524302 587328247 310835593 510195532 864758437 648406831 927390284 976313517 145586594 103780410 1429874 196661256 132137898 210448539 708329481 672137885 9021974 547126254 5932115 436182015 672791731 845378400 739604552 195088022 968916544 67990578 705929746 522001438 132972787 69661242 122838159 231187494 962243829 239047777 104518610 941575826 978339553 270993190 844656545 940338714 286779465 157371161 757506041 436758729 634757169 164588385 466314118 943208574 823782802 663705655 875541036 642730350 327699416 800505193 150678913 202722464 118927205 15155416 649582928 501174384 171935756 734291194 873916439 319122188 101718934 227191128 424515465 132567802 446139456 909961489 77149454 135089040 586663739 451594582 368658494 703242619 244981547 704021484 891092330 711620409 177371817 527030189 184769043 286634398 96545985 356229895 745114480 176158803 144382325 917260923 946224877 69369426 572824632 711887647 675725991 581102188 220866163 98114845 411175408 957957571 316321283 417882674 994071505 244955728 915958713 701610543 965249411 344414558 691898841 19695484 798875893 363553293 842426523 132434320 476582730 778324944 890939054 204374906 319521112 827013871 736747440 39956059 586163241 604662022 884349623 764724713 453068157 367892356 762049739 162062062 223456839 401085997 961109865 605025735 286477612 540517273 422444802 330157286 177597703 712990130 457378681 581679953 788860776 381321274 347193001 733750048 604216592 722958659 878654685 988113410 269195382 735805877 306995030 979323833 1716805 548189131 496974025 291698329 905729500 453884822 681333726 949756429 958568396 657587065 386401714 730805523 420088414 707988651 287267414 477727419 403994123 928241592 707935565 228766379 285154817 720646912 869321234 966522782 391244965 920974647 335733392 375067104 421626379 754015715 391961000 454664660 217254016 610249186 882548142 80029294 473722113 64425953 783221996 838052794 504713665 30018277 902619678 547507539 222783655 672026310 693980405 745777388 576147405 638140591 915942548 239373515 236423682 445245344 816885782 654284361 40369481 562964204 44208902 387713619 936278872 891528891 193874917 321819116 294817818 67399305 310285991 812594345 36795438 429194149 703459638 131729715 365216101 977372083 555446254 97247177 997259079 354381099 608950815 881191099 481426319 377460695 340758671 956855024 172881579 840763737 903556597 331290209 363843645 630635939 622053247 470459035 132073884 597573501 508867405 440379201 18984532 151437058 145145075 438183560 408740002 119557155 160307195 222722490 782130168 978073890 401675873 109407668 824096639 481640217 364437781 400491367 829298320 998801521 784622717 281014362 535654714 68947307 649785584 414555942 108794560 152556699 421968188 754655225 658038296 239603047 675059488 322134804 473537132 343485068 479450067 21113165 581644701 715541658 285649019 673421966 524214971 816602227 53540023 422797908 323101838 9129936 380251414 994399280 259022353 181940668 729992606 347639369 394502897 330399510 111176774 586508249 271113234 43801876 637159291 182024620 934820874 83241915 845745311 573156516 280107428 21788776 946779269 520929335 161454687 55205962 361648119 450335471 316056813 940017893 981673008 85110505 303174580 699080336 676922722 775118935 554324304 803986680 148778802 230631422 10391823 200567195 705385271 376467897 260489075 337595470 318238078 948040436 531437236 871203256 503315209 752856369 970879292 916088276 167693899 695360647 850843689 455392883 272977838 167672861 816456142 794292152 617739277 877508276 112074802 418885786 355734842 558267163 392273807 189027685 526091897 705893048 135617748 931699769 626825475 818685958 571025956 805308297 420250245 486152465 426297685 574544542 622478238 605456380 341709938 765960210 373211236 731785083 950161978 321459797 237451488 490332505 566688414 297440300 47882637 355336436 181739334 849430829 613842909 368974268 623349773 258632259 513707700 14328247 459775361 683393072 641937643 73609728 29742436 861498374 484827598 36809539 308636974 854981037 188085150 194434627 539522696 879743585 237385744 379759701 145820114 332767537 392934093 97583074 384981662 579890049 776084464 327519977 204203570 708922761 218280075 233914234 959446026 775472851 673910562 389508668 599852117 370181313 569286190 336584424 212890739 450256644 941513371 395463883 850086269 330760742 34763850 243066696 635967677 842589698 849089168 212205140 26299953 557992006 418899125 92074744 373523213 541968120 911144054 536918483 944772150 574809326 211047044 318010262 268999879 25015380 173628675 831218053 517576336 256957226 731038220 8383485 538688658 149698500 774851115 392721640 25684868 586735944 669366497 270378058 170069073 350773299 880229155 772998328 14256280 925036245 963053017 892724700 844125995 65205200 76767328 701038323 599316112 309187741 538886409 599860558 300261763 438462982 487607191 134181076 572776306 90987181 670789573 439104127 949986047 294530948 541286846 291027675 630711426 367316563 294374051 836169354 835477637 694684214 948012809 592897730 439323718 650891292 547315064 253244877 729275448 204946249 362325741 15530888 468244610 110299604 871963992 90403300 491930494 869518122 81999391 45447017 771403323 293291145 521577626 228858798 796382460 938332550 320681109 90972130 976497079 262954632 981662929 935784774 695011991 323159370 666560898 573357489 58646651 123119965 410532562 785632267 873559412 686078627 777690461 81312978 516884811 671592405 590368947 122377880 690397688 442384639 858723802 662513794 794789932 670048255 669480394 730930379 685331400 567561481 43241454 238005567 32455268 772936485 761299625 186391488 627170761 66771120 271000015 885848261 110104183 473435607 148113192 924469718 224175648 165551391 615562992 402039825 330245163 755365344 566643802 703669928 906156082 368756421 234057736 412348769 11451524 148722253 834193557 438941972 742071972 519089997 557638923 7692337 401799112 541131628 474113901 771899703 719036763 666007974 398210351 511439678 389635963 914440394 146181048 153942638 582135163 423479292 494737639 586610822 118724706 315679539 76969355 77638998 965653867 665658300 791483370 683608901 866701955 345749173 199934523 544239052 164259535 68126611 85089068 578189304 128821027 890608797 144916572 973030124 605841547 975868270 170691298 680347741 646129862 968528759 270029764 687716628 794276038 541309050 27943553 702924656 13032753 301581072 120289672 625727969 192387811 406600996 446759614 760472430 84868458 891091062 574966269 317034032 855811464 586934554 494451087 960244693 749038005 737304054 27611319 968516126 846681243 594075975 183404584 695940449 766314392 119174940 843911308 151208711 917544767 916066778 105847550 518042639 534190551 905653430 738056080 648330121 565226458 111316030 90224070 990566684 488554616 126084817 491756313 895490946 333744658 331761442 596021622 720482566 786440895 660344505 46196156 384753164 739536586 294364274 91096130 414955402 454069553 674960123 884234574 721238407 891871784 565053786 853838238 528356771 513649556 992439142 433387235 76985231 192520593 350623817 237245506 512704400 929988845 194787076 678656209 870840064 766061482 911588075 165968416 444984013 869917056 216124965 290610861 941232633 712051800 665235501 571038318 325802520 409294034 866189396 709071692 693819861 329651392 585423420 141087138 590236525 933575593 751919710 941548738 910571314 886517063 475437701 39921008 331420681 602312201 619812433 748488805 616689132 692692882 935859126 811364045 968153194 194348344 484087162 818095817 246337826 62126726 934615482 40513006 189068875 739362234 673654885 122535877 152876335 123227207 376917439 158012489 928489644 506810708 352108256 924498540 191722930 152975932 463259699 572652178 107974087 324640013 238797304 929931027 34425222 984437513 848108226 108211390 132772123 216424231 819481593 207785297 806766793 982932114 631827032 934103042 656047972 850555689 880063600 988136441 817936599 479631358 248173348 645436115 233426592 972411863 572947499 624762145 499375183 964148144 196448914 939358439 826324491 462866231 302389047 312009757 132304140 694065999 252495183 497222449 471108642 822278798 563952864 183703428 984502829 498433982 867498824 636308456 338891938 976124511 614377396 282995496 534486541 248165668 589752746 235825792 804001417 665068658 89507200 835363361 94507082 109637348 638948578 808831407 923403283 535918537 622830416 245253314 260751808 679622564 504297117 446831976 786608318 422825131 380704625 753266849 145436302 759275338 916592072 719055074 649680198 826978461 717790065 792326291 415126543 709881593 133648016 948799633 19677608 675961955 205917213 811009197 261436129 13679383 643617891 196235818 484154657 190789635 383893889 686222403 765881569 240396105 214808556 653600419 110387759 500712641 87714539 840824811 70702380 52728436 952676634 538673199 765130382 365007650 63009000 597816185 15373855 274556605 777116441 261502021 553477948 702085868 577250116 579683331 326413142 601510793 985241173 799012761 744213621 559014179 483511053 323276254 701138352 976443261 177470077 655963168 632120758 916275725 533125775 825683103 231832392 503503998 895179901 119693072 519893948 464317742 735225176 231878426 404910972 416904625 553244802 404656860 179487877 927202124 834381364 935790437 566256873 106104186 272413689 164345147 253314893 891543659 649218353 261259989 55687531 162730880 643191183 674276129 341982353 584652240 785187740 925865983 161421345 893290151 375365426 760242371 517997583 303105025 331812865 252513463 478068070 111723795 363786253 747492758 60333251 851580099 636103213 766812691 57623768 444637227 414717070 823484496 312580843 806150426 466237231 472983143 844492116 169973906 715290211 863320293 925383682 545510731 976015186 271847754 392641783 597783087 697173623 801362570 720627400 341566172 918241315 170377103 940718366 396192805 24152825 433952692 754134839 902084753 403945072 400167243 916761189 241248475 681335636 819573785 259053710 745446000 410960454 982844373 522596010 379004404 801673783 29717676 731515721 312062909 36274417 323453376 310773002 900644438 28258702 494235044 590709029 832771326 412127487 435213538 85052898 844801575 917305478 568168053 503492384 717171191 923551804 396280399 108106959 26649802 346594700 908251604 302504822 815725998 841374646 593695325 491291822 254808805 97761357 28153783 653021092 854312551 720317881 500385953 522362267 35085917 387055542 30707025 313421928 50352039 254724563 462958576 851791092 741164119 873940468 519549721 61063614 557521460 999669969 954190942 562919254 112645432 813966965 438300867 944646883 700242962 24521407 790561089 985734302 78015141 925072868 533020484 507615829 338551431 150457067 584064302 136401385 662632835 362880047 624144594 329137616 300437016 450299361 646273529 379897236 3684855 375643780 534277857 314185809 640747144 303672687 296065208 989382459 230429542 887696719 729109541 296804886 431773918 291725986 973085632 462110140 503423605 643800636 165897365 829776539 206124383 486258630 81802918 374228276 621247752 237676090 803293542 239384733 828146575 851656297 721804862 229078272 906635846 899369845 490241291 325587994 656580148 112011607 561812638 946047933 120682131 340010330 116125499 313233998 966624082 461060766 183282971 159539015 299912595 950726806 526897898 766981558 1797166 410071434 224609353 305958077 252844589 331314454 542840397 819761680 330591054 329675945 171201534 654114938 747007108 352298503 797469401 742879320 851797110 164285896 158336847 31260188 737700351 4377558 36362564 123853515 877360300 477954547 262667408 792754816 400994113 862591537 12120449 605050599 988229173 89783672 841464663 343780290 25770033 74519043 383429319 660441448 472881812 915121123 658283641 102744897 238984178 615764859 104250762 533749835 816276624 552943618 424573963 462179224 692763882 217079812 766837631 8748750 61494830 347756513 876478305 144751781 458825406 673854029 509356956 366405997 959278258 550758094 786768145 954289029 829178964 762724929 291356693 880217061 475557538 851571030 685244144 394477717 71725519 564025615 967987807 640718131 236805058 439139141 581222418 223536498 904482965 19544355 747804463 784244629 693922071 121020841 430069965 857375480 864019275 660156458 401438330 69064840 749919463 298432718 774834870 597996869 209551318 908908817 498683765 560911047 432031414 828224578 548955809 258260918 549099355 514798085 4519574 492161105 793093962 354006226 35423909 337514216 326586943 366703731 42173841 173297250 256795815 190946954 282662420 140573368 346970151 645601545 986557787 634930552 683786259 894226103 411450758 644747843 64588791 229149618 493092394 356866895 339221522 787575272 417782478 868020709 496655318 191674268 5193073 885751524 942330986 83840488 310023938 56803132 283723048 733370165 373436903 846892148 490459679 738437572 619429495 957988134 154939025 806251560 316810112 654366589 603114870 968621514 60002497 594022845 185243128 353690980 398224241 969141436 851289589 147670407 478299319 448111713 996877441 30941973 101249071 420540972 565419105 661342151 633563243 439993262 214307984 901985448 335307120 788410636 609218750 65690263 325093173 785916288 719656908 98206922 987910183 344196056 1736273 423158086 46876584 205485813 524484376 673302887 752922251 535344206 270488480 325362783 386018202 804957802 751410330 637530031 720606225 189984105 515306095 961856431 999699488 264727420 440492984 950440972 474832748 815889769 117589956 230781508 465528206 348165896 160122133 80687148 848458386 702758856 9831395 906920043 328138106 643973931 949943447 560444668 132310201 203864901 299394641 674146736 678455481 862592833 480674660 752560297 412090453 318575580 914029524 313170657 117556063 627192808 511494111 833732257 25696027 16297675 729600113 654518282 701583042 496138493 633529262 222986127 799315969 231689869 307271020 534034553 749156727 36059549 781421494 124629346 476298554 198000353 447846218 415968954 614215507 914397221 331282460 945514310 467468861 200507076 716109265 477719195 380146538 720594481 474619973 771300263 433023422 762211954 126290437 387752233 41550866 553203359 889899734 809512500 633031602 921651048 777252396 511410352 246993120 703025037 599884724 815032281 50820431 125959779 56041930 175024318 82602152 738029142 730907139 884284099 585391880 71568225 25174437 371453472 205206912 345774999 986899498 320710751 251490964 501933470 950329793 797178081 578577597 184235311 506406349 830654298 92920039 800265624 746238820 63837265 715022579 94351418 804555729 225563553 307526198 649989386 709010706 479919355 987447800 541649684 835481690 319293538 259331063 11582195 372932752 411810477 899066081 73527131 891621071 888512520 74174685 420326288 967559396 546099315 954190851 561626092 777641427 232494658 487430367 866016861 306477651 563674779 899810034 339761380 420401997 255778811 698288945 970221591 696889440 855770289 395339908 926098335 229187680 872687458 560519240 817299131 845384147 627066243 871835854 710024380 655672691 463760354 120625626 949027207 931444910 682760478 785677604 443311126 425396777 458482218 460282586 521703159 690619961 445407438 946665500 817831627 942663016 468228646 430345087 755628232 533946614 353479969 385867659 129098040 1370966 97768195 600316221 660156408 411498156 293246435 6862982 465158906 770111830 669099822 937030345 893703363 835618400 490064418 13008737 708176109 723027982 453887572 223390233 549007014 391155798 585111595 210040754 333234480 172958563 243344226 256698976 836358751 802699283 425815434 834972237 852750622 426948730 103378565 15169045 838048746 59971677 733449484 750276937 587297109 308628920 274638123 828517612 482363013 682814265 697421504 579007481 606421426 1264322 901962239 862704602 326816939 742635499 935106544 770465010 820030290 14107773 746303215 190593301 280536603 549419768 686262060 849102859 813253265 708574990 987252521 372625425 503884754 932974118 845684287 525631063 161335054 702031322 194801945 78457218 178063883 782600313 767645750 963674668 288943524 826800006 354037355 820915551 589775941 42611254 803386207 119299358 64541809 586141686 643230222 700841181 316174653 477446884 500677959 759181316 493078738 735994449 407058478 401109615 461658862 482487109 631326906 359158000 169469795 46928635 270062136 737492428 553379991 235003232 293811142 100578618 620520451 903106456 215904473 898671592 652628660 628276858 878753720 215898997 12756941 100956431 741463038 876144888 602903811 797947158 221603612 339624824 30848287 808626051 797729492 911442545 781416064 768855804 193894847 733096021 153687446 625919579 65227720 366496009 687019368 928134447 238833327 656883300 312684559 639507002 281954440 182610099 593898297 357766644 799195193 777365304 388649127 778874630 592161279 71163558 69535407 493135057 278853609 77695911 578509498 435587045 812345436 861811542 773686727 33219210 531725965 922002373 330761447 295224122 456238346 545698425 352840127 151976740 4219954 687909609 670630665 396664491 881845432 489781506 654077715 261666789 63422500 30196646 396582462 272562973 594864977 975315752 765180288 97125202 428889328 82494929 705828579 487923894 879619588 763783775 554743300 844812079 821175909 536049281 735602324 451087065 122946877 354308956 238105307 511657089 534972301 383581193 229545008 480784428 130218665 682531348 130364290 958924174 563095736 565874174 675269586 68974228 554914101 948816829 451551926 768739291 77113201 498027831 473145048 283059510 560427790 327553738 672728181 948780587 936036997 496979911 512225247 356538999 586647457 592208114 306342907 330619014 647151618 17334020 28183236 553908731 323144604 148188457 579918790 929037358 624527157 437187971 473506979 709294761 33266410 546736037 694825874 668318123 740249258 3639576 670171 682797221 894680761 937865689 700642908 304411327 259799087 801056473 860042247 557648212 291286391 235467900 560346210 878444657 182488784 52919579 410005509 958350170 87803599 6380418 63794464 537481990 761443035 912900466 415844850 963702942 299806640 339527200 943323475 404442626 173705181 502467252 970889003 967153731 298079814 399296203 928753400 931440682 964328098 655303414 300728908 695662256 722949630 74134841 261315917 509804932 452555064 278321548 286210356 881726856 738261892 171124830 480357070 288319828 346405099 50415373 182665982 582505394 471662791 102335598 852580153 811154464 356103753 770110284 768211464 617813841 158767347 166917345 831936906 483991468 262937374 511321950 754677743 933803980 579945590 226496105 160671742 412307198 122505336 911939994 57993104 641613766 346205435 688305917 490145810 463659610 678121636 200662931 730222855 622144805 151966064 756651984 954470020 429941062 14040878 149108766 261278643 881933070 518949378 102123353 182696784 816978054 200053988 815568722 788282927 173453286 697360415 462313292 84070836 619803167 54770130 302341762 502653017 31065427 466111090 240969887 437721644 532034391 689020230 844103748 942096718 943545400 493739242 352636805 852113013 302019251 287548877 852938348 187873130 310333115 912286387 868099957 319058316 305745910 616854323 357719569 629522508 376389185 907110457 702025507 784786351 270337064 903856774 634036101 932073167 306793839 336141611 167733380 867969114 698990476 646795282 631321696 263200017 795430441 973336693 406663886 253875787 534673319 76491621 189551990 431643759 566563734 919873604 760078964 273789 825554750 378109259 602463963 305282950 406170138 298135045 734985517 675962671 215413336 578595794 882409444 529563187 11033946 273085541 457978349 697722846 502865463 540787270 255179048 801083794 536838714 673984849 239483113 573206342 688611170 243241782 101596282 157237762 869582049 847344631 256575895 911827044 632532894 6701164 566932208 727737630 204532915 625713346 533655722 634285941 861854191 68644600 888896222 947024324 239625812 23614305 865776665 51137527 132168346 271036196 784870363 850867216 215304107 509957823 162514712 447128230 514341 935862400 323675834 232868705 748587483 137133835 634511388 936341887 648671828 335597527 996721552 295963730 804223306 26911664 336720603 614128576 26326573 550895414 176714676 622210242 898046366 264663389 859895880 142372325 531458036 443219948 633593785 610580428 354762170 34662398 561714842 17007019 883985967 865212035 613426549 719161806 390184900 219423936 180292421 316304912 866437794 508131531 685021180 277907045 798855970 350066192 388411134 903461712 707290706 115056591 515937188 100506733 500680311 72800155 711497659 220033769 567474053 227476444 78499330 651867140 163447209 268923982 782877359 116813206 282261952 287969920 863590891 72069768 668604893 618896982 764263505 212409686 995011015 708922504 902935411 385772692 576284536 834966305 446745685 299314534 449627551 671496704 788046832 768283142 195149343 801531738 645719985 640273473 25942158 689049654 376596983 240325114 346786999 831152367 687323288 363475366 765118744 85177270 997453660 872458447 157229413 652926222 297934465 855735442 123713283 439541838 562840374 714785824 849332622 507727395 273076256 894875456 242229587 806987019 873088471 194254028 233477078 40572378 94181738 492162863 937992270 721539641 700795607 359992046 385208868 588771106 440799124 770271516 315750776 423181670 1970441 958226403 529094556 691082791 233116435 109103874 728604566 854431070 719503491 692496458 943390882 325266518 804691869 587576352 535827630 596142127 872457370 6548479 285360349 196677724 430474278 229093107 126228485 862929189 761392610 150290462 852615985 854660646 474093795 257791798 972423711 992465614 483046961 934238469 813675458 419161313 153829705 282114024 992122561 42593015 63671452 71767121 696543223 695817466 839297038 872218950 641644273 447505580 881571191 760741599 104266355 419773471 48822053 744885451 336214771 979055675 10853976 459577036 923770652 622497083 183065029 982326 616858189 75643696 197604884 764218740 302970648 848908412 500498018 371305603 218238403 41429081 947734208 137387381 848086218 907829584 483000498 114962928 930596187 146693058 958361520 866631853 756350936 67185251 973931944 781020153 267925593 273682617 35726714 22384183 972674855 178398625 178198395 356198491 618895682 904401867 259666931 966134896 196645084 92148793 201639327 73757716 282257372 974712516 543675439 966915319 268886621 536891031 630823625 495576416 209353004 974850738 984817796 745214631 490525773 230245992 514525422 461632956 756939638 42767841 626738823 648093087 299605650 677308057 914724676 218792934 511290431 252039135 977934092 458388282 223691344 249390423 173889086 19720665 881168461 991997817 250182186 742733334 53427182 697771023 72407443 731272405 480854436 488463547 226032436 431872528 558817552 404621167 618890807 10774356 695930250 254887666 215900863 212280900 500805787 798941026 447760480 798919445 33896579 542753965 795523233 440648977 899214516 810036502 88371073 315278100 464306772 485540790 409784815 859246610 167142079 607111417 353966673 769181071 656006660 588105501 562027262 907192869 545321315 345022134 598324420 243104258 701239765 239227693 730585443 471479655 339236996 873432892 227231759 259025194 92883278 891908979 508989938 670580533 803811654 311413431 599854247 789154564 37486387 869420734 170333889 37881387 411933200 551045780 864414786 555375310 542889354 181643544 151352612 945417256 471870085 647546751 801750996 585775364 314274200 922218961 101425073 919843399 509272972 18148711 812344210 825292132 391843808 726305139 1970749 658336998 111223112 507280248 323737841 610692842 338922026 12480974 84029405 581013922 673984287 886576160 756063910 62093267 714220408 639839725 647850725 370831191 51673015 247666954 674802343 204251549 957019665 210017310 951585515 772344868 983795443 538715428 498069031 191033091 248799098 859710445 824563396 329252196 668260857 883138715 20906397 837654020 978999415 527551527 181905540 860882869 489755950 685605085 416714430 722013661 841238286 892834011 494859649 271089909 185468471 568403093 499827837 308614410 874621059 81236 653928016 102234174 567385593 324647858 172443920 251206472 767533403 761814559 57130182 208679920 192228505 215226208 829011949 253846932 725269852 668681994 18189303 93543847 697839996 80987659 704904136 115321900 771781002 447061282 366147641 273189951 320603463 773052258 324811926 400504972 865840171 83676851 440892193 34849750 728800735 406149201 859593101 392220530 241519811 305651531 89129347 988279753 575020649 149090565 521756960 270641370 88437272 165109686 721571701 734390965 160722762 139253483 522032902 718534657 298334766 626339330 650530380 626633846 145750567 483715248 497289267 458306916 10501194 437359996 511366300 759434795 160190948 249701953 767441628 890810561 238777586 590337712 39714364 747008559 941343912 814935244 136066167 705851668 635972587 543620972 422518334 584736288 696543702 943323836 772226487 977530522 426526265 893409980 573737210 754787035 396204053 723994559 94324883 604697809 129082401 216478446 980282883 772656253 543298376 675225795 738850879 663616629 80225577 913552782 368746543 797310563 642785942 340804084 301278512 145023364 378649621 434343274 959865235 13487401 230506082 335072446 881121564 366404921 128108267 956347023 540816771 203362477 598304851 216911824 547426550 832058899 156448495 960175689 521196693 335750669 889021772 475255574 395736309 936927183 891400871 399345446 474250910 596078499 660711795 897573821 586414733 735379816 389670871 165479154 849243315 839555855 151764013 441246770 868434035 968475933 149678469 54833339 170018600 886266157 359229984 38663714 324696733 288580715 800893429 565311182 215845267 554124313 993585455 598446714 100303423 541002254 473689260 771163319 993398472 350103345 465652864 418234215 443404749 382302723 915818096 719904067 918877918 81710867 180409976 203020887 878175486 257360263 635503941 802346625 89565992 374238105 472662204 654710773 108021959 735819032 287267953 702078395 335925820 217450979 788647985 78783535 913271131 369202802 882713721 653946241 509034990 347645005 314761980 436785203 350385201 947318930 126739232 691145118 297595220 372176499 308271233 391816301 646223869 988009398 545756525 461892383 380984003 295578931 916624743 830843017 694876852 28845402 642108325 782787154 698237391 885297322 346735506 508026742 395707787 887447099 109151564 152223940 506875215 219206709 66900519 612584800 800115959 489770071 250199848 938986305 321488214 666702449 231731082 577540020 519552174 780728042 110012221 787570647 941706041 504554810 41110370 253178143 374964644 217964657 901056208 451909586 411193743 293054383 92151442 496110478 632644622 749108394 125934183 423075776 195623467 318813739 174582081 464692270 886481761 166819472 327395270 385160046 357116962 407495756 807144658 60052332 729754195 534361187 345521651 331054056 467741131 278153967 769886188 877912310 932056279 744442269 129765171 769995644 150131385 555673648 120959090 167690679 558568996 913987837 886626057 163231158 815487426 594304366 338772362 56503261 780414638 897237632 563335228 358922084 801565434 868415300 144391066 793103062 106761771 559576929 710160593 118348435 632160696 823760784 183125061 919207246 360787342 73410591 985033740 839286415 649525391 340389743 520964209 932572465 522151694 218023030 174679667 987097061 687875924 888774462 921442371 629170606 114819103 557882724 696191434 459020387 812250910 482709658 351231264 429391153 178526582 575962917 750861590 626039574 86460480 885358687 319689133 301369703 549429000 627767606 366316701 767090251 416982608 619720875 428362703 73255741 826873355 657067093 13386211 659561358 808335906 141987036 350590123 96713440 740398834 743002238 683319726 12861868 31595468 659148173 252058790 70656957 332460404 581974254 472141314 677705907 435077283 196977307 868834149 147801218 554987141 17042978 887986213 6972912 880782140 128614693 632146381 834430746 845016155 407332824 620571803 18765807 996285291 805408646 351418371 254309555 761387625 729010957 170642730 33997438 666029638 933789533 732736363 473029051 207071590 546518524 533796566 700069545 351229986 954215301 414190764 538688989 61802310 631140388 538374628 611075774 469632147 208445980 180015018 320553992 778829630 769015361 717625818 382753354 934166639 528999550 677955977 69434472 225985987 525747281 283225981 51571225 561983435 296213322 94470320 945353321 287571595 123135376 664620753 660079161 527335420 521984603 38990530 558257850 251721354 474201211 614821659 171784694 129605526 818833103 578741926 390411591 883595253 356061391 89194721 469228510 901089391 526542084 743756927 628325181 817416769 954843018 280554983 847266237 339116955 792024212 28364723 111335689 687994915 642574056 665167667 861287585 49665393 400451679 464605928 489640025 107816337 183475303 90762505 750461143 744053124 126451329 359415809 560720408 20303294 490527427 757530350 471086059 762275497 832783446 462594596 728111732 568462625 121589241 375731112 620391083 451248375 107899516 908424630 421906651 646770543 436489542 686787900 319619875 893508033 309708496 537665628 595779576 384591259 852640552 446221038 232189089 130513821 796753519 648088827 523764666 522878940 642127195 492475715 175622578 782535775 667257782 975564216 538857804 268098469 922953437 37035521 569057314 569362718 500693057 852588536 717912861 157592493 899929065 138876460 980360446 650031661 449174767 487592544 418856153 135871976 351666174 770675722 924274837 865555233 393257435 236600021 842508141 360375692 991914969 805325087 861702257 125816017 312995939 420980860 749475590 741862668 859601782 121674289 185427298 563593040 500593444 5187514 911806737 991661087 855698450 63425348 130072435 964206580 157140474 397768755 152630331 196000697 879265834 276878238 958308337 56625489 188404740 971847886 663162993 624881167 723596156 84008387 747074411 564119357 465284509 355970479 355408609 141885079 194722052 491891576 432851371 140526285 696510051 502461498 560882166 267682308 55533824 656306627 286985153 742530646 466641715 554958102 230809438 226864205 233052907 246444777 596708343 852344684 239261226 662694950 964085255 148965030 4807556 281439853 266984925 526316773 13972132 887612561 144703005 23288196 764539592 274357015 590380094 934257366 44228928 735436474 674606348 124914845 515848178 257985769 448107303 990472339 473048537 884319815 150128515 679950052 381575554 790440235 9585127 653929138 816930189 363799070 354821998 603101328 570382642 32007775 66239240 52328712 668501177 168959074 735468538 974371605 207936513 990898252 833941594 55710377 841324794 736050297 850676628 582111529 893260843 869666807 50410728 996095468 36671276 318413064 723078633 468573375 920366381 232148388 68791551 310046307 753119086 852870645 593747942 632254734 838311877 653585112 396811821 656928486 105090331 545240163 196629944 981955209 987581935 773586521 27514175 32443272 145277137 848588984 699400396 405498599 955024104 77728300 758170177 67467167 289547373 678427289 920569808 878099741 128470830 32462229 286579329 244773312 329326348 169688298 3273391 305509726 81436285 979596057 431102603 494538176 316380938 129717202 831090840 857593633 943138258 843776126 934021165 607747251 878543366 626800309 639595510 24069402 695736683 66412232 687481972 714776302 997891291 677423160 421132920 205033278 974648516 756563516 641282476 830814728 727962023 552242240 681969418 455739586 980586650 850926177 943969634 212487892 598332359 523872753 490973657 97337883 438033643 929653753 740156005 571378536 312064984 950659506 906879570 901019903 596268787 276799755 340334272 34028313 208967606 466812711 887748898 951662690 628268847 940567260 641615808 792846459 747690623 836550964 34254902 494999161 170191197 82669039 291235315 614749028 315958929 330886144 195977403 23526585 63917689 867907596 708974886 112441065 664759175 482672366 685207838 305324504 251463360 578900022 148193893 289572190 614159934 744154277 211539213 745053641 651406768 381788338 565436413 376763482 903232213 27928328 13266803 858747843 576281605 222383878 131501949 742377135 679611048 58705213 353101438 129040954 85413820 522339318 698696624 916465781 422218835 409839530 770487196 902823652 173806610 90913159 685980835 641583359 950584756 865466354 649396089 71921332 414222213 592307967 525548452 846414563 531188712 685737211 260063745 767015393 912392658 604826851 39781696 121154550 474560844 698911978 496126563 739121631 535058420 926647031 390166851 897613644 66365308 325088036 546345739 436802403 965874730 832180800 746843835 298943291 277682007 92221518 82736038 427200098 621806064 762640644 458686452 739328344 900389112 39402061 801750817 368519698 447215620 531705544 774057596 571166840 624275389 905179718 909378985 635527910 129877090 145797711 371491616 895346351 738823747 489261214 987903147 884911765 839581255 916363169 24946156 577840979 751236711 568980218 708913364 704240660 385771569 700681216 860201517 322777848 862461254 63132223 286199314 965237654 131102684 186323955 309523058 866017141 559644988 387131537 857110928 369160337 488953413 424835391 85597317 152332253 330933223 602590039 378724285 445258683 957948841 399321832 435500406 762697861 928589348 25639221 156255812 922770184 274757510 745663796 378042256 669018372 400862224 962216975 884141588 918795181 578853528 581634471 304594016 391153197 960619272 868258060 968649561 233414175 915325149 206021894 473166516 60825110 457152425 847030928 483027327 767755284 114643857 973359447 997005465 546214931 608047567 419427903 75442997 850792064 836755249 397078494 928886619 467190458 308563608 877466367 769150055 689143704 224839546 122056993 469898632 134200288 327011937 759680246 300846146 381869777 610540394 946526436 97054445 295894682 244077255 951198087 73111347 434627296 431586621 14553645 708077206 495295292 838510247 87892312 623937256 415871419 348619377 898399040 240289488 968396636 876280861 826760783 380089420 649952918 862586306 266220451 660375338 452361167 474877576 884858255 784096141 146321381 984729901 471203866 449587310 175840937 215861891 314660734 227206681 312886624 541942255 561419946 923216556 545318209 119236588 115506113 777457819 136621561 634868358 790684313 288007983 227251753 649105376 899391293 336149250 983569383 828517550 472621164 298489476 602975545 686706875 946371607 995846265 125847709 245964645 219931622 246303865 501963652 731029532 541686708 525783919 323781842 417892071 457761807 754184731 736040800 615565534 766558905 124442000 351107707 541809841 497812266 323529654 62022754 330754335 117775115 623981001 451220171 966666112 552334012 775474392 146043742 38478396 740527567 79944775 583787577 206871890 405455754 59853389 2442346 53787858 871051113 415681655 920913016 900425059 992064411 152310307 606724315 931431102 981928320 222708486 676953215 985031216 737869873 194793383 131372870 550746908 31317240 608246753 598001794 634055031 56368595 816689509 160236927 454337611 740745717 910631990 386448375 457902132 776234566 931918123 537869468 352154598 514847710 515488368 870226321 500883109 503749774 418937349 706977521 407041227 271741783 164341309 374423367 75217989 24921328 579812929 759821332 407409431 863436356 572469387 662282829 108612564 447004914 26579307 934362842 688973350 160916940 202303877 430826777 253779276 677881176 693449297 265226072 7000727 847557202 259574426 47197022 304666604 88847912 92800256 485414115 855241797 602632060 781103734 142169107 159619120 590498470 532456132 893364239 690306126 405531696 700961542 530914667 204069845 209764184 593300523 569340593 542584079 664430225 773537655 338057949 982353881 697896450 685662465 737973728 561355301 165468165 504466486 30929694 889384056 900740521 715656276 512441327 899865708 720046385 639856880 400476705 393194799 293928083 230687856 306379892 459395587 773525498 224673426 294920989 525120188 936759877 669762276 48986692 42705477 357622661 646311241 186647686 686177051 961207683 585855098 465919859 684773328 565714999 281952386 303875089 568714121 985993298 119181633 298121047 842258049 375658421 619494123 576911027 945775236 635706872 127346822 876317829 116212085 598303460 191620207 383071393 131137480 531172089 733577942 907379921 993926920 552145897 795409469 994420049 290613330 494109979 88619005 393742673 971391192 425794601 625994944 84545399 129179744 959901026 661540616 654157402 288567235 869329481 774073255 353413896 806417262 311102996 824030789 660443009 382543332 755143726 824231390 568306489 465623097 702170293 782210881 310191514 675225753 665912572 902968210 103442560 75706559 761432586 101053128 22171323 790702718 451929370 370138672 871019152 674488892 847457817 953854184 77591608 877071218 731775019 855523941 838355552 751948077 639621671 771137773 146423976 808790672 919920918 684780574 376696868 56075600 69352632 657662309 165254110 600298038 274404863 581210760 356462417 29935009 849104785 408912925 81443056 895201281 570155594 15093776 266124957 603049053 688993208 440557089 863011378 480340174 277069981 447646307 89018364 586375426 18571633 931136959 173308730 195850938 469985502 26709615 463263394 17421900 651643458 853258883 85781213 93769505 565404208 794367071 851226887 346178104 571674863 207460667 167102768 355508898 982217977 601458082 234397917 502016004 956013950 472667124 325958535 618013464 574257375 517438180 666600218 3990060 641472819 760826 192657016 88413601 372992709 270088721 250513396 848290413 943112851 16703450 310522840 306710682 977221841 695445592 337458911 80982980 250835812 167136098 463168187 118310303 168743528 745738789 991766160 114264175 992033963 767906207 605108087 832806287 540080175 345123621 960134396 288549355 478292652 717550302 98518945 198348933 824446987 499671109 425384281 78160115 840559340 507084458 396118541 293023199 172566817 777286066 776245275 225402758 906410033 389535187 888029905 737511994 845101014 689930969 859354358 187246304 627867263 888009828 785640770 669120371 626166735 770856039 952107234 332148095 607889180 76908971 134854133 226111142 301337073 178080842 767305745 133542687 905223820 988923956 297540286 600713778 201321056 624978349 51561465 874363581 840830100 633368013 563319475 55693234 87204483 656607487 822051664 356498070 657721914 819084162 810495017 59594756 837334782 442927595 15708170 473601064 42479043 139710881 155157684 335959877 833916853 825242976 494781276 821212720 655248563 868063671 331311914 812572882 680502735 432678794 835171260 761795241 194999759 84543120 299965856 5174087 125579183 178401749 461262045 257832658 850382621 764352058 630852971 532406403 177149180 801137392 656346550 207283495 621395426 648876033 24297759 70754209 809562265 41601735 219092603 644238182 406781601 601289843 685599378 126017279 540950701 600260743 632901793 730990730 812678946 88594268 975178969 846262330 89719451 433515677 780707037 831454931 359027303 679321034 491306568 673136175 861158153 899872439 618932005 53146043 705394871 767069194 653083253 922690298 870638044 706688960 890472621 903764993 932199319 997539240 817596469 741900281 247958074 359203814 464536042 985313697 811407819 149454706 340586908 287389642 471036038 564658327 42772625 559798233 157538137 574629748 874248192 602935880 789564518 569838718 434459031 828376356 615160709 767703292 440771574 219475600 621951167 273208714 426097458 76805954 935447252 191886487 533967699 87628545 207800246 251133670 454833365 390739245 351375628 381979665 568544555 452492087 458654896 905480961 49566519 244968740 516595505 866208887 901641172 219854862 548960338 353227655 871962701 467706019 379836809 963051544 940241122 647752100 308965505 349444965 213055306 372392551 126353304 911486078 659100460 89367894 478268002 42653384 344096933 154702446 412440100 76554361 464310981 951438273 412908633 148266269 959683089 93826548 523454769 602812436 353838339 346775746 374897677 654903057 350423173 827148151 416271364 635991196 733778042 490590069 386056290 190403729 435345974 753525426 600452387 480304799 430097152 443361848 535552892 184301259 98776215 747193509 172512851 320941546 864121258 468976808 24278722 841229866 187815007 53732234 828906648 126208905 741121229 927551906 134041303 701668444 875214721 707387104 838865463 877118410 203689981 131329347 123928482 18392143 275857204 644575587 57017526 245350970 274100240 56575208 598815814 189674542 146649069 508810000 813198553 540788645 995600667 803532077 417491754 96436072 778314079 437854501 221280934 834420248 973324402 916127217 536517617 964320425 670549633 941939230 31250273 206461665 674440363 204594767 552672641 533742558 129772422 762821560 440713104 670278797 389178779 552108709 958387200 44679220 668356069 184381169 680653559 859646697 27085910 146121359 512038097 321195544 524454995 446811141 229688988 76009216 314770227 991811820 308480666 141016887 805896899 917973617 257128131 685981986 177236933 691578327 750115136 458056318 86451308 725815539 29464817 237073114 176978145 125933231 324436456 917772314 856683458 393327495 889648620 346016502 443102366 480395279 899084535 726529912 610737274 527629163 67422648 978708354 905656399 647853013 834108434 225617222 967625097 162522906 322946971 816671692 286654601 995739421 329619486 442323823 422741796 432184915 629896218 845165152 728090403 472913990 840622912 806939426 778450113 724599827 409112312 473402636 82697520 265595115 88401117 158604490 458888980 836639893 998975292 209027293 856189702 557516778 838269338 720627734 1955346 463782744 477683499 265090079 776151097 66706784 466607963 786137586 788387056 815728921 556125769 352759903 834094495 52103850 97127751 42335371 794077732 486943187 168143708 861778028 65069901 461791845 164734402 717153102 873624929 58212549 985460840 970206800 82522776 737973869 848030320 814614760 855041950 617609835 116187826 471520091 144659476 798059489 519536696 540744518 841549071 934265475 74981568 280576024 299082647 138409756 425096509 131825557 669255977 378707465 939092054 282383444 628451382 322803644 904573158 746310722 44418722 301815610 750642298 857342238 606983238 320421534 51292630 870535418 301819758 358408084 818165617 305707712 266078555 820110302 234780148 243322027 638185666 319687635 404380350 898805962 496446027 43584219 64552035 723400064 539258131 663239668 180234536 789675527 711060778 701339184 67645321 549441768 606907926 636327221 890643124 379882116 42690894 514518459 222592267 754400142 291012288 885974546 442006182 49820047 802273612 57973913 596296143 970322273 457100103 187933768 14824324 300251061 439660793 665941799 72872440 657697677 570757919 448211157 498246418 506474178 169306473 582211842 494101740 788531839 182767357 642421237 351547477 552529348 335484659 13630214 657050960 287452132 68094166 605972261 888379283 285887239 136989993 808773458 907880713 95849129 815404000 211159842 921241168 907891225 819935459 673692993 409238332 227512571 81026191 67105258 475815762 159950790 903485492 557695345 726244430 4083783 638171800 206580921 203474077 207125533 447103602 798976958 990735332 214472506 171992304 662801421 935247223 331002472 192894001 165028679 256868578 381153730 582509004 750304162 225221220 742952246 386139976 698822247 596964207 762394378 385642146 712257653 144657706 547707476 906661066 669881021 259353327 516459393 387447845 412754116 207048397 453391055 441789196 709685028 25534982 41924306 176602700 823790091 704988050 822265075 627315109 802920378 670815899 957182444 711166539 26780935 747013887 601356877 758282088 783756763 703391698 168059131 416627352 386696629 362393561 273216427 379817579 41801766 489126927 598087531 76665062 897681747 968922148 205942554 901612546 462067830 133431033 470549995 607657516 142226525 214984485 325824486 857775812 669013482 506772851 728621671 152008350 678632081 587346786 468522653 382307971 157647581 201672099 30127628 725038001 42765035 651328671 166710028 556567127 324786925 383118575 851148615 687836698 796779944 52990946 271118911 985963155 170856694 126563322 444129734 280201679 497761861 530197871 581666947 648217293 219257111 118066858 798143604 528233988 194049408 499718859 719913831 892842970 202176683 191399972 53501311 200021294 53986133 849829564 26645429 337442767 173817936 97945806 210457685 862153474 379372802 70523719 877011325 797168128 276597219 277659723 781530017 504402037 983169795 747923376 3586570 324942595 265994881 113414017 864425810 145667517 906211605 566698620 935360489 724204204 687611527 505654933 996775571 765896270 137665077 245450097 184312552 715083793 705427345 139738860 584483795 314214621 530282145 976387475 581926420 826832775 697484926 368466219 676197566 613437279 669807573 71417128 687750585 817209507 761710441 218634551 460502593 493601033 962514063 278756276 545827173 461709881 78768560 430572596 417127049 611310673 572457674 752978429 285968868 397984863 658505200 397440649 924510467 609628906 674002373 529459207 383806788 268739178 207497221 336262106 261930588 944248779 295368189 173084440 233863890 418806511 900334862 195607820 708510337 613083433 809305390 713130932 531127578 403871170 144981862 202869827 193155231 406347383 131515989 536575392 837865450 216099321 26042027 912771814 820465956 90233452 177343407 573787618 828145230 727015400 72722362 832390552 478136251 670941947 808801978 649552575 252671636 672877350 552685232 714531904 226920275 278695771 970703922 644295098 823559240 258376838 933441770 9319937 185416727 931202561 268424724 892235163 776880184 455646237 482282756 368785218 149474166 957206176 612874654 158848612 349107825 843583298 359582428 487328166 841697308 579441711 112295756 759660381 462509119 608952456 306013583 852269075 570734582 52290786 398654172 913235208 859775024 128526277 732876666 674691247 304899633 388808238 81979209 956401964 252652560 926950925 153668666 814641885 357135674 728979656 501724370 310606542 320208621 876166582 410875052 965759299 460466366 222087333 347378420 689117746 907862291 733214805 495405292 684701126 398422442 348163835 561773674 31447261 888014352 190519487 515702872 321065867 953018411 223923774 751899955 227186069 431425713 461664520 65573261 139102455 6043566 996247587 437824652 397028959 637060354 41315462 433900648 11993519 179933921 716388767 886678256 457820287 648864849 259506126 523232262 51422360 357445551 253583591 775827486 766237818 837536554 639219892 808315587 370327511 955408199 985022833 532230419 793006102 874141019 295153742 624302142 870618321 917865492 840095729 209143818 499626583 232341489 290978545 512211794 247730218 528938949 859838556 993942658 565954434 211561272 870015538 849881117 305369545 710967622 898587111 731260216 968890654 479121598 25287909 28684796 743706834 175763652 867999496 923716647 154797549 474960207 118391072 908060556 985573290 694746028 375506802 958082702 807587830 954133241 77024312 568541865 824599029 394513067 224254492 912198890 70637181 476855048 867338945 439735922 219726490 832896430 484999482 910148854 751408648 975435274 720969361 624500034 904939452 271270370 174015042 36600241 88891484 679072716 670071485 424338615 758082754 858376116 440357863 352415064 720577661 399954778 787656601 156015022 451501647 367999697 999725088 923295078 277210288 354942722 263273659 39961155 722490953 840618535 602889249 82989722 228202107 985177680 357264120 707239893 348753366 61184481 68337247 932323056 809379490 607112210 403425381 151100671 903872857 950785902 658950799 926172070 942766890 336214100 441139798 876329375 301449336 45096825 489360806 245647672 445597529 881244772 397295457 922958034 571676696 40333297 269244890 915177315 988416948 709992143 419875675 705823477 739543135 665216002 832091807 842602277 106377727 351910753 574879064 433369509 584960688 842739225 986404522 304809658 874573119 811260200 342753710 596095422 164546993 511175139 398568944 874130335 95634362 453660784 784612850 574593886 291456839 237706829 114269095 350199442 682742005 283036871 282339576 138991586 150079127 334894468 156809283 274913678 916950963 878744314 148595415 389292007 522788358 626037493 481118073 300833747 732916220 94859541 503133409 845437258 874856248 438238029 674480190 167791067 30987026 14978662 514992046 626184488 452363540 754445946 239567047 979894629 775641468 720377721 219569937 445814749 749446078 585927079 936403082 557279085 640233215 721608220 451855392 603640583 594344091 15305027 794935866 755128369 322279583 382689115 535964464 977978755 768003663 38163705 374613966 345065773 877691042 784548228 721490901 514103662 661658305 940528568 140218490 313168158 317169292 990491684 702816486 441399845 77903636 138637228 205877940 168807937 402840354 308591111 798807157 771606597 788640687 771481665 605454383 306868500 990159466 464059195 950680538 296184746 12527669 260587558 597302242 190493396 127652264 100534028 862679464 210189170 208407949 992832839 347832833 670793980 744909666 254601736 753367477 622853626 403706330 796025553 289146369 568907915 513189724 523470331 340779798 723420383 788660867 152428849 951306391 744948669 413189276 2165235 330062879 5251838 543829547 931151380 840254393 315833360 828434790 342002237 527011430 972349555 619688632 119060584 47109787 314931775 406013248 237172837 56131264 886817949 188377423 719845976 347253682 883664969 147522286 614995257 431216449 693343255 558440533 907662163 118834867 207543147 682750069 831528133 633482047 63064255 760396656 29219844 450119315 142166049 586091803 756110423 70883151 504617394 505112963 746849882 144022920 273132584 194331493 10992252 24397126 467544397 248596660 763033984 686481670 823925885 704187158 24830208 858939960 992967980 148297832 393319909 543210946 274718558 755457334 983949040 214210171 70819885 191405891 101515061 312168881 395106375 774979079 779715738 737554340 312753774 353774380 310771805 218017800 513044982 642805521 272149387 373190279 655935818 821952839 830135690 966417213 317451367 444474646 581260944 949751098 162100062 464179193 371963433 805068036 721777367 909053982 415596981 582436114 776185481 498458343 733877991 998867538 161332163 311008619 907234887 169564835 989943782 227524853 103210929 894819676 67413225 674192260 930183892 138843587 273328596 47899722 920794036 408020887 847608133 977061934 897490217 528827783 545654766 896031818 502347102 460823481 631452436 873828973 701845074 253252676 174536978 969338777 536142938 559590838 940593620 850918022 702221981 388456334 100577117 633234462 106551191 353302211 886702657 584380415 239347607 587990075 688514091 958193404 295245632 986632533 443754073 4287388 739188236 558030944 75143195 532479129 939767492 19730721 964368727 961910627 711018505 794094929 912079624 548370075 248135375 761079581 461501370 230773912 513979100 561486244 373440016 682486757 406877518 93297533 286178623 508693441 866601746 51240238 993541008 15087773 16744302 800327094 931058401 115739298 838878839 968142596 570183973 540302377 815289244 229455485 149086943 414705728 749079065 692309370 657954731 306071852 974324613 909409735 732029622 25598689 401149509 106991654 173924161 881878924 433214486 828429514 877478690 99694090 579674759 142204892 44837698 224401518 917606780 952889850 546972704 959658623 64038829 615239859 910472780 427936823 556189988 363158284 598338285 781971013 207146947 109131262 241012284 933807244 800809404 156723957 667903495 836624546 341859351 690680402 656548399 589190738 125968687 132800490 95525674 872364058 419613493 892164998 398274177 944580014 297404588 766403937 168456531 697258611 449010923 58706093 946810577 960660997 141015198 724722702 220121280 664254641 391636037 160331805 262658042 313476603 169169588 658839014 471208173 472487194 202499986 101417834 524603418 177598839 24917978 379013662 516064407 993994034 562685020 343008619 77024398 194694557 767886397 730502956 925435836 163583422 906342258 708018227 358523890 658189009 508007754 720704707 581729688 577348292 497488097 966669079 573782565 283030714 383491502 45896154 234675368 900842377 403124214 412324013 35942978 712385084 229164886 890441381 376549546 807726225 635139389 867795147 155308711 3730811 231074159 789386394 332512409 951545249 706420355 850536067 699173105 245567453 67472486 196235884 37897397 803801535 877880534 659149869 296167421 735227912 799212520 360316434 75033208 744108847 947099779 350978908 226920936 176021983 14189283 193796800 639385249 453119351 988189463 193339622 456347150 228688521 695565698 15686891 827107117 793322331 549168989 386717919 748391182 96540777 314175796 616045640 213894487 417661153 232593765 128488094 376854723 854083877 635657892 683219405 696622494 506470221 444737658 636488886 739819595 332281762 447126465 181946285 882208190 404754212 57962794 565008636 576912387 133447173 868666295 947193695 796615349 184622636 845120321 735280263 604906375 897456051 624133363 26450327 852880575 257108842 837048781 207223210 912939446 212122450 939826978 185970251 350902617 785194786 123363610 813984250 656303275 674430148 988756785 625297070 171601217 526964953 991801014 335138382 494285764 666639153 491829581 492422455 136132211 610313557 469548909 647360185 555393950 211751677 808263907 640415642 451137580 682853018 916568909 352901265 385983510 953485773 867741344 207334092 484420841 786579438 257999267 961968235 129914440 257703046 479066226 520504066 728318056 874273237 767471355 138374683 891802771 891391309 695061380 560799666 106282918 213874708 565694755 751317687 548944530 850401158 228245061 779963791 39145694 151245233 634677032 584934036 947025187 115356120 239671904 430665360 793834383 257365233 488451414 562078534 683819619 257016871 338827460 261701097 670835829 304421720 698342714 623808931 54751151 672644503 40405916 718454288 884922766 708478379 113890210 492540352 311175075 303228047 395356247 651649208 520342550 307422192 92555931 763739889 340962846 505554610 481330593 989681880 162821770 147411820 841433969 110920141 563401275 35666663 754611559 175102116 990610087 63675042 109393074 491119143 326077528 686285649 416576214 59142545 610861931 476089690 198188075 787318548 898531346 110856022 566308955 812622933 765242130 73928854 908786408 777381099 462430790 765147036 498165667 441684195 987971354 488392349 283878710 4889919 125000976 462296070 912001436 368151666 835853887 76266228 96682659 917194469 118889935 978431418 673881201 888659318 155217534 578582111 501060604 879184372 541532446 972436765 977213329 238063012 803463444 724278500 321236302 254870975 163578587 970657236 396901287 363229169 570947199 118226374 47556068 217399516 828153891 665046212 879611042 885693075 126435451 48835981 487784526 158109983 110335826 987498002 667092909 157077758 509813766 966797820 571533911 46126495 225299463 330607907 449952567 700760551 907305307 239429656 203090189 318644911 640621853 716254876 65484524 167580995 878543865 130127399 218537148 443403236 878629042 958042210 326792121 69219399 612598941 540226989 672054002 914880021 154069539 728683418 751174603 8480617 944498499 407310192 403352699 703075669 57344525 279769769 145287823 613491805 900379432 108973428 30058341 193313529 572740173 200462131 859360946 81830424 739920073 415660286 593003261 256595352 85983743 396090911 953286177 331595983 235565028 55379092 925935567 385281285 560608641 257735057 809084937 776020983 124676981 659851771 492500392 209154646 842074225 986237165 479262936 744241734 599417274 686104119 446558103 41599455 6677930 810291418 205522489 762769328 532225582 684141453 829529063 4159799 781989193 720749371 597414683 953490282 915385232 954836355 377912357 101430065 563584685 413734199 22891433 938706409 613303773 231120093 232482079 613437922 85827697 736602417 36596562 624409826 619446864 973743521 871678178 49433249 262433396 241090768 460233410 74558795 213028713 76492563 926459066 833806337 487771601 259697911 334612454 210920280 297507042 135564217 973455669 494099416 350321382 618501068 365866986 311391870 600058298 750769495 235179551 874660666 964257103 478123188 322280765 412270450 865307693 865919731 566422662 956378749 406287851 521492053 42141580 975470121 789922744 814358225 918936246 393588022 937679061 78903954 96605634 532928985 779243289 768118902 936518205 756522554 124045164 159605905 59054093 264898806 701316684 325695656 501963240 685925277 713330251 895705271 395068890 546437941 185578126 52002155 529504707 980441781 102267728 837670057 279460311 764364171 748843101 983284741 174903068 348836887 850976663 615647564 109214191 54261294 432306549 9096955 617879167 744347543 842508671 543557317 493008721 882869393 80698067 46188560 554133946 243674700 111330467 44174968 348207720 85669739 245535925 823914059 164181978 124324488 236423137 93998348 479814883 977976496 72938135 227026929 884528427 887049187 875879255 456771173 851686318 31854485 330271030 912148614 1826619 718317360 481777759 951151016 844651766 505472656 173721232 479416016 183425238 527653509 90398617 239367481 183665703 211082069 120214497 166261971 624785930 619372343 255176929 507731135 541202928 2272984 731757478 441854932 439674403 19687898 180758355 6969117 945236542 633736528 983601053 171172441 465630639 749806148 999913293 418320506 419622460 597316658 912904898 352433190 284465275 71387530 203469932 914570297 487797336 836819505 377977682 382172737 392560019 917279232 157492109 297694977 451488319 719956804 929700043 854700270 58003269 857490748 224330957 245330101 751135455 55411359 458623977 581480371 344971549 252885011 479634824 627123323 712333923 981124279 788061865 168295764 83128297 975797402 199664732 453753017 730699834 396693825 278573640 463327191 422737845 209349669 857321767 211186962 755643663 581597491 704275268 791890560 378464719 226821962 861485828 189656684 620492497 652545216 87944026 861939157 293891780 775822814 712682064 437911276 125253292 734265183 385948549 155416986 94638688 198816501 82666154 140514295 461015821 739276740 470745092 332845268 761051569 531795685 725040877 506127410 604508577 353172965 26314323 899507145 10087683 170038595 467185464 893748098 276325205 878989045 608997168 822674429 470903780 667832036 272569574 478740236 642992726 274194795 695818391 43968054 293176609 446374876 406206613 433009461 231375889 211012347 776317893 568145528 329565382 102117249 986047522 453857186 361231155 501747866 422332216 979903497 147049505 272012903 488509097 590526264 988914090 798785149 603598508 100733805 577748414 659955301 934142089 217766940 716395681 248961050 193816862 599144554 842798443 380057742 70616925 77703602 637432966 575410724 177640651 573921284 383783988 778112311 991328259 960933025 566560519 474204306 619484465 713125504 17432679 415683063 44010136 455222477 942808848 957912217 82713868 713755492 520958353 682173345 30752377 938623322 882400973 607580332 43980890 813657461 678614142 684058699 555048002 48661679 484045229 46452353 971068503 301987511 483493179 618428233 916164561 146352751 585071196 842179854 178473344 508492911 699870487 657839921 824953412 802730369 926802631 213853831 115533202 934830371 641029789 554251736 188365814 841433096 667711003 351345249 762024331 434974359 252770714 797382739 913471109 411523434 758920389 936915282 700175783 482115537 669964060 548554486 641102029 845239885 693972594 685352269 12862308 980760341 935054704 80193879 718773485 391019156 66701840 135519625 229235070 706971624 543310882 808874059 324506176 639753061 373461962 363460218 546498546 133709584 819155968 785867238 252158820 982889253 762647310 873155029 243849725 737769618 512108822 410386303 370822710 73983353 640461450 336856207 2400285 171093938 657958066 851056040 87238611 43615046 914821674 207615198 877772814 678264053 982498144 286085177 441106072 300345009 814085914 960898102 512930510 700634145 31145199 794480709 630169121 350063391 484874185 782700876 589215897 211943994 601865833 562827298 559416141 744536373 446108131 72079381 347529964 764416390 566208029 964319589 114523703 263044824 992342613 872331206 347220612 764570505 879419288 891034338 497810493 245114669 117044044 748136661 35527519 378984713 370022823 374598319 346413052 878746777 327287349 103897846 455439545 308098058 277655638 172093473 703982928 204871360 463146429 898381086 232420111 65124306 225055474 947427788 118512984 714118281 509410769 112146306 744585247 6318309 173897225 595471239 441048687 977291800 1915294 619750807 69299941 823745800 868371304 626270308 427060787 653833425 195366290 808766995 971134879 135505217 194193947 541449403 321739137 378407259 99025752 208624362 869443528 263253973 671012464 725997599 10958454 105225625 332622815 191411025 836874784 146268743 292268532 929141606 797433455 926643378 489132370 969987517 403781281 616840543 583681907 814439589 385939464 87581961 826360096 892551651 278584458 265251103 629857018 852247856 421539103 639214660 622922741 841760953 142627415 476476111 373103063 455304606 747981521 378158921 519231934 740213363 67023813 664666353 15310487 675771841 726933883 116323899 530389927 793267846 39377874 321929036 20751110 72524977 46689466 379550336 801208351 292023719 174997178 651037925 942902834 264088769 581902187 211146429 465165011 550469067 556615162 771002368 950980200 265908615 655551402 10019031 910718638 220577320 541198928 879159330 635729204 630812120 891659989 313599988 946957790 544567602 865330104 300591633 281704291 773379528 369439625 254928503 388024272 698616990 778486127 849475026 287395588 219567277 192958371 578750470 474478386 477828961 839446515 978521769 590543713 144846620 49311808 561269125 476583407 114882481 435207424 273409819 481411338 171778793 819065789 540932379 169162038 796715265 713362323 171167470 957203402 897236266 292545462 914372652 52065650 853660168 423623658 716712230 75452078 575177780 238001417 670379869 1390162 679187642 33730945 146754568 922344452 815938459 540477395 884250771 927499458 467377740 467183381 171885850 627582809 480289846 430577521 912151282 560662767 318299444 338142884 674645793 406631801 413210648 783435392 13078241 766522949 910774566 471137130 262966817 348490866 365835414 247379676 660476420 790600051 173706006 282309604 106610527 892456849 891846215 751176612 135529791 924425318 313341244 993966032 130230113 819581794 938563326 415340851 158601401 88026185 86805258 946389546 809917420 510102962 137145808 11467559 44780501 546591114 84820278 499937583 795373572 627836815 271417620 773650525 821562170 929703382 971805110 155650141 677483502 391104838 663382621 974061297 453223627 852044827 748770238 33050224 223200048 920795235 601230977 253267522 339675054 9878660 967000515 683798373 108225166 382811572 738313620 948040427 745955913 544237184 96253306 242457722 135262733 103088454 310489325 535884490 166235711 366760634 736229849 461609515 25920755 902995045 167217439 889155836 341754998 97788705 750911763 74541621 915898309 505200542 936511999 543593438 819692819 865546977 298943647 8380821 288440903 372301504 356519588 929933069 780815227 379189351 434107185 599824009 338006910 156122837 467131745 380200293 330796115 704139616 709460159 323050638 698579888 151005741 55019980 747123972 373280128 879501497 458566780 438744671 926584418 654496339 137739449 413889863 313186855 315461791 711049951 286465531 583349335 407940628 174637630 109053643 738452141 17684095 50128284 717280926 430324631 859493246 284632496 208048493 330831031 769424646 585388968 488667846 932077412 826354142 765719460 62017098 391066922 860100642 435824952 51966511 527552581 567832512 699727854 757624254 86839850 529319166 727681474 87088598 957746175 243448050 610586532 315884903 49538846 567747592 927268858 691458040 718555542 677290625 592349467 182893091 900095146 811792622 751282644 409097235 76429136 553478840 515770855 494435852 307326642 860764316 958393992 789041892 943650993 396598567 326259422 653715586 584158813 636000574 818434696 262488678 980354686 650600601 29063701 49459233 848794638 44351043 528563082 414091736 762185405 351012124 524529377 492801733 371740524 46696023 209166980 648664502 13971634 678952956 265319894 143869836 786566490 824784743 262271402 840577982 117452003 719473607 650169546 294064851 128476671 762540192 64476273 18326251 593313556 147140682 379738321 340185143 510235838 974278767 546108303 209383293 406735947 632054929 997393474 547470485 861426749 905578625 993756919 740955886 473729740 666013929 893476016 151954954 473068642 430720964 845136864 53972989 853474333 849038560 236349169 542309362 42044496 828720227 33986750 578088102 116648194 140774723 278380313 685595371 340319341 454744524 879004486 862727719 28156288 272138782 721930878 460909778 78642270 414246061 622905965 871432443 153864413 735239871 495595957 890259140 489235720 86997234 144671337 755915490 37720478 424936883 116823186 858340638 898297488 306133959 587695278 763407062 984619910 86728390 434439212 247923580 922779227 45695387 213010417 443966230 893818781 185447174 182046934 562131132 104887054 399786010 355248679 201812254 332513829 667638463 352461349 142930172 377759374 484184625 995717765 30138283 627017894 640652671 683792624 304781719 312841216 967591949 624162177 575000763 410040802 792032274 413104970 49555754 57916872 557561627 803550927 620538250 378290656 505327238 466868361 850100628 305916301 938847752 141712740 528583830 270145509 725227560 642765633 129675249 815986227 335302337 417673077 727318426 374137973 638107524 684486472 482049181 549430750 785384051 891338871 450910614 739177302 302210663 607632307 10319670 596449781 822437260 699534624 359610564 484617100 954032608 53959383 318531225 223514908 121358263 988602724 776713379 519404892 934985786 337863752 814051043 206766903 822658019 646520440 603632111 811112012 322866946 924677852 911757168 40090477 32892475 285633745 558498469 113052448 582493958 931492520 904321247 248640545 128116782 57549860 498539011 609357278 362209363 32110336 823914251 583257337 292706408 672003431 779281541 927946186 959725109 853387898 805319954 243697883 123015893 658886350 742226408 15020394 999477561 683258091 9437009 717833194 975871140 84081614 807426346 406258818 767258414 830480743 516232037 719138188 748535361 90297116 270141063 638738967 627067167 118649925 988195882 847012966 32592217 316884142 619941244 753348719 595801 979261208 377798079 282318429 570013914 766894007 690267847 981792015 171610474 910171317 188036991 536160918 839378671 433822894 386912356 138038971 492044319 89346866 707198472 655306102 948158214 814951239 978598801 873981816 486162308 242591204 680844087 564493986 562017229 197980279 607486665 621645964 583605991 272497504 837003817 784229119 719558447 173852788 455285707 565837435 871887060 707265915 972853562 901819058 565335131 103411377 84221844 276418315 114375961 165096265 653088777 942350624 227997628 417684453 850443871 257613120 27845827 427263776 415056241 116174062 707070721 61587972 965111723 250871136 272600606 20353684 873756048 963674113 100669718 908380740 947732021 804140271 293584568 985115259 932693443 678790525 657444391 427547928 380225528 899507378 878848349 47847658 289722534 610978761 443594147 256325687 289850931 869143727 827797531 943812406 622224408 485445768 641557558 522405525 868243810 305032235 410591806 724126707 616660788 652269217 987415501 199605863 367808323 187008938 328063572 578992887 360638553 346551864 625088918 474478882 209588434 394637041 908369962 374481751 599938338 23453873 527376380 625292155 989325900 440325894 400728268 107350887 871286380 691508914 215660717 1488744 558930735 858841645 937291912 812527806 329997398 199881249 19595415 198280733 112318007 6268908 723143402 501653039 570971707 43850273 923768293 698775055 80428897 809630471 755214016 269029839 420068026 761671448 715715078 913129715 160011243 716149124 321850902 486812916 383931310 770016940 13118373 990805951 739512913 70315687 381109306 149580339 41076789 264928192 293742769 359515302 296173136 704961269 105910201 108126561 223215788 447055482 662328918 884559135 724547302 991067188 951450719 6474130 562198191 251899967 251700993 117666270 178969167 976123241 732809530 15655196 479009053 557284788 139659871 312386777 951232520 135403736 426015894 838991252 599372305 375102142 159778141 349785923 194954446 957681158 584296449 158975439 880888041 119448194 729296936 704893843 233035423 731584953 745005640 158647777 729717314 817662821 127705645 797456765 527532215 474221045 439049591 841350944 487257081 531736332 930988569 768841718 888071572 696365568 803507931 16472096 382824747 186480731 691331545 960856883 256317682 14251102 891012355 785637560 684733492 268448633 185558683 412218538 905069006 893080788 660636090 567178235 684766386 95990218 956596938 53354255 653719654 334962792 114754573 201996862 761543554 691503091 940668949 380803671 46227510 491776351 720274506 554075416 931844801 536274904 783388520 455474615 343102459 274477885 110767614 727525212 50678220 630612640 414794479 19304356 64448946 163529415 589702645 765659936 849236799 875167918 515736089 644761044 301958809 824033795 251979324 180290488 375573753 730621865 748144530 868122426 241921324 318687286 914964514 978158010 921965589 936036468 821176135 175777805 72844585 427855843 967920690 717979387 729027313 359021366 641801317 85206977 693260684 305826514 518076985 416002704 372185898 774324050 303643993 324912908 714770578 44917765 433370437 94756557 705373085 328205166 687808976 802953185 655875512 568151491 160283043 727500616 600787558 648506735 553638072 980876151 327232444 842429329 419020511 552043222 658186468 252952699 67863612 189682754 88128154 233675315 29878727 621531532 65585074 467142389 351851978 39089655 12198800 563227567 192427623 624006846 356683438 434599043 634429456 594407308 186316058 472695112 634307597 107422466 107431669 287503370 332673273 138796340 7709941 540577158 451443525 646260268 612288227 454857647 558400948 391035494 593908254 650913324 374652381 878841682 581695511 167404247 108167853 967944662 203082451 793308223 177151202 178384585 367125868 203827751 494490001 638628217 239153296 36845573 219501728 767553062 193907456 373505412 681099597 134343300 992655891 196504322 369536677 676800573 219719728 421215762 784364046 948185453 595582295 107816956 122353598 969401636 448851353 606555192 344042817 616642536 626243483 923560183 752993782 833810992 538524440 815459226 946425747 386907882 810117468 918839096 42469021 180491254 38984649 178799389 401731313 456492200 749269078 588369221 843919934 414644298 688189451 843682533 313922696 275059863 950957958 839879395 609846439 387750978 498613625 273987673 515686598 129055085 665285417 693525782 573560548 13460018 183814385 353710108 755109718 161012510 960390333 581688355 377964355 60831153 735465103 168585237 275503911 300808415 865619198 29941648 802626896 643612049 10655666 994746215 614662756 788304165 693618665 364341793 601027545 287330282 232671989 170436729 638295676 965327269 674274492 61902812 882568427 551766032 875456567 422328558 334611483 577137493 328388083 450275333 964476882 636838551 188407443 815377324 445936941 581897833 647468876 777540898 630769436 15130452 521068135 779036377 750271713 335002710 604824514 39066871 218704021 299162462 218366288 558363096 777329571 721654737 254740372 275585674 654899019 135358216 716002858 743795023 705958176 799918288 885297215 756907551 392734603 76389352 992882452 50654499 461934150 210698374 75453054 348101947 471124705 356745939 576639337 699660409 581299520 456480618 346109008 793750180 99136026 427974621 786706887 84744118 541293436 327875376 499538162 342746718 88971077 338448476 461312011 485262975 10185127 703050445 602625759 273282479 176028076 512499429 176429393 999427001 322089903 167801463 131034582 668803867 118288351 166532940 381439992 284313481 733597887 135092641 622620884 3342952 539047849 519559847 673155483 350968660 378082118 138113282 349683220 195268250 831259159 348189003 22817561 352178111 302178032 121794190 672031509 726396407 589450615 779293389 967738509 45921966 352683178 724391291 345124500 652445699 80646486 431708161 15470932 460174152 428798624 969153084 984602252 10774404 750205568 132798205 983499277 481844721 684810817 31966856 189532732 103078014 945008899 404100373 29428884 979609165 1965113 848788307 943296033 990282294 990000172 293816544 83852805 279208259 772009589 756306642 348208630 605890866 63844487 253199921 522480830 126744822 151760419 969432698 181143738 789760310 111869409 692469278 767735388 405664973 107171758 875435264 698038954 376807752 820206408 679197435 314736060 460033387 339365060 452388442 78762817 452210604 89985801 55338590 373208315 138272439 43830867 830300092 613900094 414959592 747448496 39063836 629007733 225235924 666941574 788315547 805894301 726341312 529925387 560724298 219153865 991441704 14141132 363290540 728353948 836355642 555371559 525372476 74870738 215529048 51425744 207090917 125991351 809424794 873089360 157770376 788286638 137547850 470326657 682905978 874385835 244828006 458827539 754250755 752362681 916404001 230592267 21877471 917163894 697782114 349181247 114583489 352776082 565193795 824449243 268502476 365178196 498481811 74510046 492832792 234587669 745213013 385374366 832036915 463706306 309699903 262774336 444292253 69325406 778338108 761564481 270548298 378598526 112391402 149266160 278828580 769379275 459522589 986447601 159138695 412766851 134014042 82780603 12340419 715425529 318048093 959136539 30313630 188204561 641330579 28044975 616154063 960964037 581786272 276030572 645607300 287973282 758692315 622256921 624768477 385852235 17036493 69262033 720232558 88010997 763519926 538783109 557715137 915324394 255540232 434342264 14303442 75252998 406564586 539632065 417789841 903878973 270249398 443409100 279049572 424983059 835814011 723874521 979350690 374156322 95323771 585865340 324396057 278243736 395622062 749514523 624864136 945967286 28312638 244101492 458600486 299684434 679588105 26853908 909191961 490889302 801366563 795158496 580496384 226655294 905062993 868372624 94294378 630775710 676249230 330131247 858360157 634974362 846215306 445281437 430689232 605845101 178953510 849754125 738736944 529747427 629756153 276334471 863746783 147977694 662787790 361516647 947488688 887251924 464831012 241269724 599765613 267569231 627589036 234181482 741906513 678204780 760920015 990308200 370196367 865842013 572625190 565903235 920382409 886515431 410906880 285587257 624101529 400919012 863120351 861836383 110310923 387975107 712120827 482834332 588140321 593720323 934836157 593042668 903980622 353614011 248763461 360431645 66203132 110301461 892401637 380928341 928072454 22327247 923214500 188122506 512788798 822853561 718877373 100004616 813301736 571034169 42918685 151512559 873197117 849319882 870216680 90037427 488202730 807086712 666917108 962858138 460056974 481823845 451640396 456717889 329426239 436798536 831908526 831534616 747703046 680824809 290701838 98136289 170701662 479310502 53823505 408656437 353570745 981861874 49831571 970124031 460937979 445334992 851326497 977151487 537351677 844008796 414740608 461491784 381963787 993980738 222049060 491836354 131591527 550235205 374323129 484463529 940995524 708288954 389209246 92382988 386877643 430600202 86704485 626790223 443406489 626479924 507792725 981778089 472692287 994197320 716470760 786103975 495565889 840815853 830832461 523361959 496399128 443416028 93564135 868949598 756807088 571770210 861662668 818711634 275857386 608680674 677677382 407095393 685191451 808601681 660946262 39796281 655828619 501227704 42620716 3791325 742624248 648905910 816894896 493514790 638315536 176519419 134298109 321252160 417849082 490620622 604206560 641448233 141717710 272167560 64524381 475338293 246947864 4199959 396316715 458483596 518506585 372119420 96235059 596645291 868411014 145649485 910446612 612225759 339018631 600762676 233745058 768299469 958542009 678095982 157506147 524505069 82056813 434514508 851830801 896051210 714597479 813284021 556098842 407301315 635788895 139426 977361955 730269454 296641667 598835361 406005121 478109360 98383347 123365716 869377982 630693061 57310020 95054831 975802394 747172414 303134974 748364476 934338823 863895134 689669150 269885850 807938220 662329661 727733397 307097722 651683684 253893189 802680774 40876513 260931644 200074424 502874892 998368618 362926456 819205671 987560498 66159681 769657614 474942716 357346297 826446760 907058473 680461042 292829845 243258742 247161511 778796439 135215664 177726098 814162844 600106193 709721958 370723709 395775437 206824790 161294280 126332102 827622198 10179378 982867033 107646867 81004165 791134277 78990868 862409246 58533276 415745218 199412835 652923958 307613203 492795826 633511849 488232378 24809907 610853743 116204474 533607202 677776124 511939625 537641566 110342646 74139040 188806244 62100434 216170836 391358214 381864312 830947142 914900078 676129480 902856208 833584479 596791562 309961525 958444204 707580087 758213120 321783759 890048543 584050264 891657664 457851342 694866961 244607557 17495753 320081564 136849790 798050290 669747251 912542807 707719476 11451590 553499686 987558483 626794585 336359584 537926241 729034133 128657636 481381455 992239284 797560153 547026463 99370009 810472838 686546316 839737644 469390389 85572175 611760466 511858556 249744721 504441375 437603713 409963353 986213132 892054550 320770853 79309917 119113853 735043562 58310650 497708025 680982186 165426276 191511285 187005424 213421842 67324898 521180860 780317913 903159844 121792215 188186153 169978528 95175110 346305607 541967563 987711749 858123727 410033740 782681444 442906651 785003148 835742867 238653548 4880074 275401023 87740639 213321356 497268047 994364059 567354757 502391077 16256439 166708554 761328623 981948103 555384935 950537319 326271770 480006074 588812439 633288708 906527767 362987640 235636434 929564581 311980685 348916272 157367159 355431619 864514357 123911493 40855355 944351051 966804061 675355597 902003109 868629532 333969510 275678227 172429201 618616205 948802630 658765078 518200238 621385700 564507655 261321992 717990144 268777952 401606470 800895439 148865374 493995312 112160181 604973447 395609589 878277369 492305305 178964733 316899779 616665172 117366348 45641270 476902940 315421389 555529916 189522150 952617 225922789 689884138 240066298 586579556 631738001 803691885 80054031 256443166 776733626 877198829 297942264 736621306 990753467 426006952 868635707 192142959 777791718 711351024 209095316 932267337 253712127 408058026 531486322 129529128 565008831 49376976 122798453 363313151 955917394 467888368 152740086 280095382 443897050 173838508 125466751 287086345 377865450 155070520 649943630 909692744 84132363 611593951 978240471 162590613 259224122 551805311 966918719 873463560 826922088 238560520 767719650 770659854 242780409 208531200 831725005 563981542 528409670 835426818 269739076 697619491 570801947 999244858 331987774 805110061 409326393 888805867 521448420 178857151 730452437 932166121 274545174 240392042 732687383 676257823 957495013 50969617 300458908 967599115 179496730 291722860 528456949 733327165 823100846 916454789 141268518 880747996 214526032 58137661 143297831 917962528 751020002 393751496 587945574 15862745 907528956 769184813 541755716 503625447 370936424 653618375 942927507 201444287 910013348 737588422 989375775 711120109 615623523 320130991 201150498 976621196 738441740 300648408 703327181 734761679 137790010 982477549 2164678 691269244 16380218 837560942 801546148 882559852 705284496 997549102 516691317 286198029 816519026 742322902 627998266 617025760 141957963 113577055 228484197 844771067 819741242 653298332 586506849 354893959 418521744 960928174 823022858 648474691 611638870 899563661 321514033 760534271 268161476 277453702 939929881 351108642 189759435 584726712 218553085 991823909 700780173 682181270 687865224 316888342 157750751 735641192 375222619 449485590 722496462 970538185 23815818 309609691 899958039 62353962 137183519 884551727 949171117 590282062 119972758 617598575 305412918 289401804 906146143 795787020 143964559 596771473 948150112 301771277 856032068 683122779 66096752 21169292 274307608 473760831 627404253 133895989 665421699 901411363 738981351 572133578 316852015 493153604 531248195 382699169 523846011 383261362 763503256 7288100 553400824 986960335 705876741 689813584 232369646 98663636 793878682 978216503 337225944 936422733 919384026 95302014 248861923 285999767 939939135 957526495 616899444 966858857 251621302 685217960 971668383 692874568 896907551 183405883 69629104 742774545 446766798 600981900 6337190 316923763 475868173 496095910 731352755 439068786 103948952 65916198 648702398 83592934 164188959 260830142 737317601 969216250 143747015 310928820 896841194 285086381 187612329 755287904 353509342 604346452 610228306 594915505 77321074 742645526 387217474 138050985 412832657 744287598 346381165 373589212 518139353 809197485 607141053 361049589 273143069 434711670 423621005 407998002 716521956 304426304 764047919 261834979 788226792 317908184 546285672 475337710 132723097 470336988 411730415 499306574 617049240 774354753 857430257 366373008 534603836 468743885 831741584 709167956 909507856 287287197 569920351 689242578 950941267 483146401 86514152 289948754 665390198 670213915 138963238 928359603 587893666 681850660 986923787 608325861 340480560 506870823 557969659 712968559 210664750 728224100 261624399 51769322 34173665 53965422 984404180 202604931 216756541 317874606 379938633 46858621 761123439 773324509 186787812 172849069 786249556 886908302 958018254 129631996 446528511 430751138 847524002 260897769 910371383 206391761 358838514 536396036 737166326 215641128 21947586 527091060 475303403 720624261 447641867 469492594 399795705 231742749 745204026 737690828 245550518 271424247 956471214 749852515 110984941 199961711 235595325 281914797 65147932 247142836 356411567 106968371 799230711 442803529 491955010 454503188 66802915 995934344 141915940 723837569 121110907 464685594 319723260 430518591 899608847 794168448 602690914 746311720 516140832 451389070 165068643 123429802 322225382 108323306 705838846 394955334 711905226 569335697 654653865 509870866 707869676 125456979 938323148 294220856 489630878 120105810 239973956 4734837 485931750 619589767 929511138 440403611 171706880 339885373 522670826 750785039 748378074 563611796 880449173 305691979 834124183 803742207 835721871 580287325 769483789 566367174 328825465 918260582 188947527 152116613 891002728 641232669 943330307 127551147 579124836 815862090 965328436 276902140 285380330 472416331 376620929 450802448 460372843 476024978 761285828 527495378 417288651 236757796 305613709 437344769 178152418 746130459 86309021 690970290 182940158 348482342 581636715 90459084 88447327 274759172 537770914 560434058 661575354 465026317 468412833 839548925 685076663 474225065 819155706 962324360 773207155 330303190 834484723 660986210 349340159 360981414 822105864 758725143 407823583 3013566 14361447 738864136 479619211 701656025 553482610 58211814 613615857 10244163 687137601 543195451 576047857 14483295 17978141 117276897 351614176 215842338 387600902 961384328 42954502 239854741 948053038 850059829 845996064 951074390 865054588 592212669 800582622 788536599 372120074 730662478 696405862 1771294 963348136 178057191 247364559 175659460 888027990 758389467 597430439 89580022 859528654 643078483 826318446 636604599 774090743 589263048 16576793 396335004 72158835 369661069 74336911 884071246 36418322 797344323 528278831 460024844 446109021 161532002 643808329 170746918 333143308 279987895 884680864 597872771 246471312 128441056 191640303 460139292 695049098 338520786 163112032 670118271 353889106 711252820 379866902 256575309 161556849 91746945 739880613 643404476 10892839 865075274 169726100 253301013 914433254 694403314 988872930 191868215 590622420 117944208 951987838 690813970 921496909 33031824 990025166 529727789 15271007 797454386 176280873 507808545 130684237 923670282 216330077 770704924 893096717 548403326 166535722 44579423 181831882 435624779 855348420 480787136 197507170 685123073 531263061 36320041 837442792 858638722 684179064 49010967 953840419 837203335 873592255 694087196 314926094 426733339 381928495 469231709 597678934 69530398 173638079 73386260 823387615 679673027 350502109 846642447 374185024 687073298 64514280 992708911 162099522 897761895 25048758 515469034 672222308 736903921 533962000 413386442 987999322 138367284 66693426 439216876 1670026 238632327 9576780 260441986 849199757 947125655 82632963 79114065 155487924 585391330 310513136 271598644 632530049 191505213 294849568 145704343 754569769 903685967 983108242 38865660 601924121 962800403 40244668 825399930 264969582 979667034 442783239 990415161 616043131 373284679 837378126 337407479 17276231 30662865 469789795 174672774 835389964 400073028 629087114 536704843 684103098 90703040 132234492 154762177 524491377 770239417 864403558 150628084 614688266 605542773 81695335 742940423 922880655 548841105 936272661 145362606 990278847 902873981 672945273 626473396 436392587 17342203 608984334 58520439 480086428 365821604 192097862 499490151 695600586 711071075 148526853 926033291 318691750 410815479 179778596 193344251 350843121 507828086 149244655 173744743 166855459 293136837 342394280 531838094 724653541 588963872 277984770 59754696 531657111 108196248 197854630 717149565 877997515 54465424 464821425 60493996 596931528 233000512 82260532 835743333 380725512 725047090 415361715 42385743 374604730 383326664 813037223 470594339 995307328 48351156 274095356 779889966 704311474 176728445 184022931 805304019 279482202 421715713 212869057 144156167 471670070 203668462 909453007 249232340 227132282 610886727 315681400 1548502 486118155 622543589 502380397 285900737 840927492 191167475 206660052 444248025 393823029 69044593 7590341 827467128 650876575 632255411 611660748 566040715 996042233 999015903 715699050 469891350 418864686 53562994 724240276 57188780 240613085 144058300 835733810 667988983 100820184 842244191 943988641 507019574 253315237 725978580 258022194 58060474 813678848 842542310 754037673 917706856 299858263 153362484 119227582 781868346 702550605 723884211 133661855 574569406 333293111 486904875 999478892 597064341 167202210 988064693 507503802 462431477 446627787 696259651 136213009 476589864 335729445 194594584 401394542 403496203 836357079 729314892 905287362 415255184 544018491 597053257 999107952 52936764 809075553 133119825 914817235 684122025 379257737 759243253 58342582 732724229 806278829 108789151 544698330 994823314 599882997 114410505 913315955 540889380 544468800 439506116 445087915 563160230 916852130 921229747 952004894 69563285 5814752 481586573 117253469 344852611 672627702 900393054 910690411 919215765 596138129 733040646 736348995 890513414 916495766 779555512 976444752 815147682 300989081 366032765 265100018 102029388 945738087 316054703 120321536 316949368 206290556 600159358 860682817 866482097 860374925 405448046 169869298 64942100 969058816 17283799 487592515 677185491 356495727 8852836 955394010 391634100 460070953 681022869 93117774 659940240 453512625 814150717 604156333 594414804 514069821 906089220 304293110 15283971 430062136 524060389 341649056 741201713 804519616 742779569 418768914 687095690 268000297 495995275 498369320 346552777 576926072 170668907 305569461 590145985 496264680 100659099 178604283 960789976 264647017 676853565 700124212 176206215 510496540 88004546 273962765 3002843 536550872 633495412 251696422 31933943 58001064 776468973 68444563 321907088 793185611 324122270 942810974 167994223 600300723 109740361 957224450 32334835 897037190 468490376 751031281 717271436 247378592 603950148 561474832 784112961 594350479 430833214 25069366 45151019 456109334 95485065 266985648 418509560 542127530 897418765 393126592 783630441 626897912 705810694 231177753 791727572 770184029 339906948 126803813 386073250 84753004 488169449 136046527 833330130 661203820 818726766 713707321 13583477 687000792 214722205 176342360 890562096 855050205 933483480 76977043 267235773 409805023 352637393 344504279 31718250 851749876 864479760 381995782 607883672 554869607 839214449 239205747 830190909 424440887 312980131 635297127 782230115 700150421 614167210 291829152 250782374 32791146 653078877 862556109 647653306 30814670 108201448 883874579 827909091 995352978 663496524 2896523 749736060 993786295 570965210 735619009 630753393 157612021 214274236 320574775 312226500 82678837 395948652 825404640 510769419 617757463 265796411 871682725 303408624 504802925 538419916 968588003 989525424 369561534 186953622 86632683 728241821 904938692 557268837 593039233 186504604 520798702 397669337 202237278 333554344 510708447 44839141 282808238 244531021 146043629 52422481 570389651 166448941 763041699 761375033 450609568 996230783 291304767 113509005 312315486 308153995 714340149 931764111 917993674 404860975 436366506 285683543 352933845 810400349 61664505 988063826 443632611 871760026 396589106 169074879 537507149 900485505 560955798 929832241 525107935 792234302 347585052 863401232 558099546 780353556 172600048 965421335 170840819 768190168 843941870 296294359 890961362 407665011 727412779 66914355 985359508 140117859 332796525 179765218 777870282 281954362 152434606 450172401 276862840 733355038 396533149 36326206 934027671 381334600 244446492 25130750 773759635 130804101 829787843 730610487 66755021 17043128 425330012 991728967 429214746 326360918 387904613 12155483 968042050 895893480 411097233 304534521 524692866 259867788 605837895 551618167 25338378 76586869 343545377 846074753 556049792 912147303 320324975 162870935 796767612 416965692 14130354 708081548 885359626 415472481 127124001 30389512 786491435 65608281 74927655 720418055 558293587 22217017 611617250 454244185 128161004 607784746 932552102 60789792 380199122 782043371 286595448 555447380 72680918 853339469 903230356 471242306 309032252 894508469 973094120 970094601 463327804 256459421 346604950 125162012 116967556 756769810 33821558 717473731 245429940 813301303 658962577 538227609 389114592 755231170 195668391 869820431 86083346 302062714 430387370 209064936 555630022 574932415 969810753 159186619 529812077 45333250 118355782 583741813 38323690 754679880 897302856 982518996 580991768 83411627 870998794 456758764 119795009 650967257 783552002 803877542 990975656 95080339 399687131 685320764 581202177 780311087 156484339 1544639 209763828 55178007 729716446 310851217 715813277 40545352 499265249 683499243 638386959 434272212 491020408 549330008 178138828 903597152 781943760 295454776 611543886 219602343 605421133 918611519 954601346 182716661 913062150 924255475 239927112 834080684 44663620 675011633 747103732 118727106 221634823 75640744 274190032 760697409 134648705 673676636 357063576 547317191 997590424 670391333 887400188 628811524 315094632 441802797 19612449 496052030 940139967 734749046 476173857 410624207 669754528 451720274 894968966 504313766 401191361 364049385 579800019 646997442 492258316 582711990 428688635 141377467 308186401 389918986 575851240 180970297 397638611 797126024 862495477 146613626 122023591 395986343 882194292 560114128 323555928 456831028 973781034 125290017 673153621 680276429 131091150 429072742 212074305 713245030 167313805 454428716 261636979 626355912 470699913 465418518 131206004 28479245 510626133 589232472 348743811 646614310 676924795 627006270 557167380 44806741 892973814 836107939 853477708 518598835 919388088 419105146 289128839 458082731 515496229 984912969 92661459 155777661 633038998 691293353 127466354 601606844 734578648 2105287 828702044 343469264 73794474 823645414 22899898 386129013 511233603 486831067 353712748 508776763 178701257 46292880 657313925 66267908 397237466 167214209 522719945 263403144 226167559 962502466 767136566 610710996 491595604 437834487 580279416 791549638 648631482 20858842 743706227 82581395 816591526 285213624 714937021 199587138 895397751 507139700 799258400 263214127 557269251 127460995 883628061 930097289 751081234 611676015 65410916 868487379 133010914 207471701 414434398 604089447 865445538 960171622 186040483 772595182 985869303 8857449 894261380 129417193 291177593 203557943 609985922 238944556 602962743 199054654 40535252 357860189 899865647 115729151 230979558 841804665 78820567 82171537 340993748 525403728 771320471 609726491 386547955 198008068 542447948 807821661 4014921 667184526 310790087 815705640 70266128 893732665 116243020 53664481 674212919 216027941 654119188 51865347 522749409 866988741 74435787 376066970 846229219 817264225 147654930 244749256 205241930 624814485 94127358 434731843 846651347 980320720 503888791 198945493 651066482 357240534 587792474 956362459 880696012 500629823 94274488 499160519 355801020 405973750 60031893 421164190 88016594 927406010 683119049 885502331 145094351 656329632 64978594 289050634 613753386 699563407 939851105 695423502 428639118 248605122 209981624 994613723 58289753 252440650 157699410 838357724 179354911 636307338 911245387 98966030 3927590 40923321 899037620 172772995 333116391 407280227 425995025 932068321 21996435 72347369 404874714 379886304 766260108 460710140 563108861 764456400 318383079 516072486 5491802 145017104 765238001 886143297 156328774 353587096 635241895 90056445 417287433 196966256 408986172 720786527 872201824 238735927 413498007 477657404 201108731 62824861 447258322 423868098 734843904 987011049 231299516 471714288 873634438 462782067 222021976 658295321 374464027 141961771 738783068 31616870 780774719 317434385 574636979 796269904 626380263 122803642 93145852 684068137 575354363 795353554 974646024 61797524 950251991 592261268 549173599 606625289 155872462 706927700 461308860 866838867 511392674 419927542 586412685 452314129 970363662 661688691 539700084 758113848 767801916 978173531 839777736 393602191 611444047 393669198 4835093 617784625 886530011 674843010 108454295 351521807 147412328 535816000 430716611 328933740 193990130 592671335 95501759 672207967 877142636 319418344 536381413 830473556 659625272 35376968 713443652 300995211 548712112 540717345 461425951 58332824 758250401 935337377 537454188 686831329 567706059 95923977 89549909 156442659 391408738 960186927 217327291 142327022 975708816 55022844 205562542 371789348 283858928 582040815 3470582 986828158 471864085 463772057 909701261 418702855 399964673 382974239 529579811 362635935 84142 173620411 581176217 184915577 662310793 264501051 361836678 793832861 585744369 415622017 307434165 560928615 443508413 824136961 865844645 563465990 223191219 787733062 834214920 192030206 894480146 154600813 483548740 573886118 774440969 334532264 160495349 758534315 919725373 129906876 410039145 521354123 188991559 574644099 617373730 834249499 576039732 905725547 677244248 657723394 903315203 635768054 788466549 954084923 669037610 444855608 29064599 474653079 812181778 235101276 133196817 929021497 728879254 77834015 712795882 910730520 242239624 812675667 647332444 401837696 204941357 328897886 457181526 806471313 998542012 502676152 45227003 830942143 956278754 260190321 809257505 269065552 105746496 258411688 508292051 333500385 931843052 818721813 926485968 877934050 659969772 594228352 657378313 542956565 750654910 936678215 868572710 337498131 564274643 44015580 818314754 482490055 325942287 926289989 383036459 939112176 110023499 141876635 88539747 466408867 298287315 950248075 150597153 968513224 426853097 963743192 880577297 208763800 238912320 458075351 904441744 914267941 880377729 359092209 475280689 960771794 647850953 744591140 979369274 630759639 331653417 933252227 300111143 734321854 874179109 641650353 947739430 794450921 823778102 604833130 482211482 255676426 446105928 803031547 38312601 137195944 630129724 591783877 689522286 786475681 955287911 258017982 238039575 326526626 324865042 617473519 336989383 338665905 455609336 637462007 199255398 215301796 841194443 693756294 872511244 758222247 642802606 658736611 638089609 831706298 169905084 538763623 560450529 542318129 981247104 108558336 974139592 441505586 188542843 826096559 213404458 7023162 729151906 298711818 383837862 577200025 700628445 146304955 426863629 397540849 369236361 55028990 844603368 854377659 686925047 126486055 551433456 144639170 484098539 665388826 480787604 7123621 142212637 424701649 927390070 44643161 107930043 229423578 951537134 457203365 987360742 95641814 607826054 590392741 811294000 501566204 121055356 61617480 904722980 82510995 853530179 256761042 907082174 919284091 376583682 926878811 877361647 778400165 924723731 985943885 984040987 895815062 470327685 564327145 754694042 447034089 616097435 650157763 150844474 138809034 977037643 489078082 233078971 743869051 947298752 413101601 16347474 971762642 888600281 339244785 178313767 549545913 92562599 113382293 694987222 481140397 999202547 536069828 472196594 292171072 305072565 813923978 924725118 554322584 487676830 446239431 51308402 748384493 4449423 332037038 741377852 279953934 126417440 81461320 470799676 680794589 44782618 107793647 980498758 489635534 162501373 83570643 720701220 852778093 654837883 51810168 551721234 744096213 327248379 822024502 321145408 15333433 679849239 861482424 785076564 957638494 507627550 766365566 416753893 509765151 223919763 714008923 180699137 294577384 525820332 960515319 618799272 600913468 603230931 236200781 778935374 393423664 923098153 457121582 362711133 236189165 21240574 392797629 910678704 215386161 902369882 247216882 613267994 274682319 660048760 886538775 667576541 374731562 378277957 615714893 200283955 579374526 450255845 481244424 914928073 136646296 118986031 541735567 81423935 590975705 349678380 643479677 279071657 70031926 95736732 597056067 836931857 2443131 104924016 987596707 259031026 980451075 712785745 911970102 272027839 868817218 189385752 902539496 908044122 872659260 543891284 28503671 698374557 158634251 557525447 250753015 913282005 926440028 722801641 67170896 462463809 848960754 332629092 496492990 721845399 278593314 514503830 449952849 705401472 459998806 25727250 462402155 104167447 563161994 629528607 824984388 745353583 104812498 123846199 982777193 259671050 81961682 142556810 68981049 62963554 705484612 98763129 906957671 533728611 408993654 109079323 281363835 568088303 149642185 995273659 957214289 740193369 784948531 438237783 832276632 170071530 207985086 108143907 907505491 819900000 435343623 429611012 20222044 928874346 549577408 505727766 125581020 156003373 103379758 914943783 33353173 872546242 635484587 979598905 226831000 881550773 643356453 720838660 955422543 2109576 775063709 527104113 281880436 860513838 11807658 712826400 831000152 610010768 42643187 700928227 312151965 360113675 463033016 503135809 806966204 607674352 576627018 852124148 329502337 709081859 566710159 77791339 535102858 187145213 745132927 154481481 486336715 644254219 825911465 353675748 151389452 241220428 635428527 129669574 99394153 536205142 847073733 922341680 717339345 482866097 833642806 138912658 217543305 811510362 735071199 596557844 155446950 809175618 192757426 246083601 927316374 105597389 373604661 106132886 72677272 659632468 653264896 875178472 699601215 164821923 944369987 596660219 507698163 166993019 903101757 961138427 974768751 284251921 424165574 847811271 463979844 801195149 830045638 423414897 337589077 83158157 879200699 795179711 503695961 293713311 873758776 418110637 461756765 202497482 176147296 852932585 30454591 799188230 453950575 222193494 611319604 783090623 926803506 755331978 562287938 976310614 19907977 887434575 518205639 23387808 811343340 432458789 443678960 988738149 40077795 374468799 871753027 56701410 862037389 670453634 662310934 8340807 208208666 652317449 85794581 138274874 989492561 756438179 984603072 588204627 728244235 672334547 934420970 822526878 379991222 875620303 898861627 331920668 90393298 346965506 228443311 906057538 655225975 375155339 25438998 887939192 883893966 565528508 965517202 862832027 633274004 162442139 530312987 113112699 1039002 95109220 535395326 879753310 921108039 563927812 475357786 896993915 681575956 345707936 79139490 496550016 393776655 212473356 450418206 868826381 928905817 177073749 591290729 171199031 576655784 845881656 543975668 965412358 178347462 400384168 568861058 691343094 606583823 843724364 402444970 513836666 283092983 78932478 402649433 972575092 307069826 418826829 938078285 574022335 376040394 399442684 115294362 726870438 444221309 900064129 88714793 970038377 933719389 843641223 523455028 221464767 973615806 94242668 570179020 749110351 108822539 768849091 791284307 972084022 899784001 214934740 692560386 297802884 180595825 317368599 957279844 418218174 497657411 871003069 345364185 520461918 733108334 102346791 435083540 863918158 952702017 248082284 334851998 912608881 158214941 556482776 891684433 321122843 672278777 965478503 52032221 394147987 958820061 868491086 749741894 20208024 818751847 774624371 362045028 203271129 428168009 103239920 144387169 359093628 112647112 612564116 77241663 837663896 704156991 730581601 516799824 89090490 215290778 93759247 127098812 778063460 421225692 150643592 74706686 212617609 14347673 682823018 613692263 895799827 93221244 444229000 464780698 381933406 713748931 55096425 983362318 719562682 919227838 608257224 997398160 376172268 507838803 613794834 368346814 254536365 480164221 666418923 687659660 281911082 675303624 873101737 912923587 839175554 736450519 395837655 804452733 210360395 979041247 959474612 481275563 358850062 296502569 411500210 13098639 20017606 483806611 866111479 978061634 55484773 173815568 637921759 689150511 484112464 690192932 698667384 965104278 615174110 471825512 594020612 441302538 967023068 473360140 676443259 761494259 699975436 774118736 777710086 162161421 866998177 120072458 295574149 283001319 626680772 771062563 110032906 772875622 379614227 776838170 106551900 255195199 660032028 584371839 584372085 75889792 477707495 847622009 730486788 555722247 483092841 393605953 378543596 91546889 99388690 619897253 351310019 278852749 902176832 10499206 382147156 904096495 226604233 321870426 545430301 964432989 275236470 947260586 6847698 172292445 178744706 439797397 628806872 314646341 16966943 602770252 656741579 937880258 168641009 221951124 513113336 527406162 686717585 673504583 346272484 339667658 759110667 230679507 551947203 533014480 190828128 278437049 207727361 853540961 86906629 707939087 118981309 74002253 821502818 574247167 366120521 824901558 728452437 533783622 289051820 605642133 634332588 621219509 579708192 978656309 281198766 407006900 386054548 183345846 374352531 538612666 749759274 418051723 175246855 838511830 327565498 173112828 165928107 357673257 78651214 895395493 896640404 930661482 909377700 232033781 654206410 980738400 386350511 397143984 874523850 593786988 761925398 499920494 503395589 345190396 882597812 375663642 648353887 146262809 71460630 858161267 194793137 859044314 371543040 898215822 4540999 849289198 202612456 818790994 431472738 485598487 857157242 224454906 848450998 845562281 919572498 357523351 190460142 757287183 274263109 719619212 456841508 654337607 566708056 344731408 559982697 573395553 94477767 584578479 998405699 697205507 352682176 414793929 708134441 77726440 25440933 657605394 957841417 858847324 683059598 90474512 179287235 492318146 147962821 179719329 880800428 666432014 684322376 922029426 637137932 100523340 968899914 869735304 90817952 353482519 910618802 116935867 257015576 86223138 207104154 824558646 136001946 618436019 347281361 216234745 304554557 760868387 294947930 744852055 61643407 672720735 333661163 877639800 186823440 125511786 359430767 631869656 640709557 548592345 722933892 870939846 97812070 275772757 940136446 222107622 261872512 639366685 596883042 965906608 771550291 380527489 4695404 922345711 38807972 212982888 886722441 586264130 61339693 851338955 869721693 635514526 349898009 149663287 308342079 140396746 335601800 661840975 197395896 632571617 231367185 989279560 630146056 332617940 533579067 236682860 26363809 507108070 48119298 103787160 396205482 306312238 831609177 872612029 378642813 603471128 297344930 821872226 592325417 526882788 496861495 605100576 247831024 646600486 576290021 261189157 826977994 222059076 435164780 661456050 808291041 88499707 429169408 425972893 18776083 904545499 255961547 722078160 974190452 235177926 768627305 238038472 525190601 972659829 784021354 313951766 980871181 176071155 798580947 397602018 5178352 458956064 601446045 419457891 18901075 603879215 331175221 678670952 672644557 914949160 995815930 419116754 151850281 619130215 882064323 52868631 321659878 518237211 91704150 856891073 850995381 556813256 200526834 527851757 524284415 836623557 321219526 573566669 348136029 46263999 19038839 325888294 829022494 373810996 792927646 704101843 820658884 870438905 897576264 889232960 740700039 679577525 802795124 383061487 988466640 540795491 730631577 562926327 394141375 489162196 95327517 597324416 979632294 500983339 604196319 528751944 58894732 951043167 632546222 688867873 556890540 472761020 128996815 145869936 568139763 870354274 40908667 719015088 581408389 793459909 968598622 28108525 357671736 294357035 648347418 877881674 958434327 661212209 962195394 988443771 644119008 952011079 300846175 337807435 75597447 239156271 3633518 219812888 824446385 152189570 858677856 243103570 991744314 37054763 842392089 310983679 515940783 95167721 978081650 661536570 187633877 269366993 735129016 237667248 391653408 269714634 677208362 837052961 68243772 630805520 636901758 695893989 212419208 121231794 467461212 661669732 962081686 816629524 277032418 225745053 111280045 589727854 425812766 645782432 749664839 148251978 602362007 269526292 458242451 25772810 350201541 404231858 105795316 859483999 55493268 111414215 848083328 443578579 492586982 985583030 950312065 789070657 435876366 524480116 810888184 190589015 661953109 942072074 746921237 628676123 148212344 275204631 284579008 383209827 475994408 635761740 324970516 647941723 623686281 616013038 536213726 190186755 186153651 810647639 640485410 425095087 429562932 538397812 306741399 269847941 251872909 163983688 984401702 296244994 693256880 240745832 887702382 954944630 429502857 103224446 287871555 192545411 370585714 451500999 260396075 867613858 305853372 576733844 597441504 569325470 208489261 235004621 730001104 555184662 703180413 594305385 375736736 228923647 704120792 440669943 378328229 129456672 342971999 184319000 696549993 422873749 775025830 613865474 17737260 617932621 950956344 185165567 444873312 69825932 69906702 942860524 899101996 389036393 577278492 334228410 792698091 623974481 617231813 889644529 201648810 521240962 567946593 124355368 88503469 174303889 895718078 743336078 75184874 232878565 584567452 669684068 565938572 998156601 114055472 48617345 819605873 129316382 673418914 281837517 709245101 897262198 947820943 287108806 102979333 650266875 1418119 902217470 869832821 104677814 30700432 624301978 238497707 949990536 680642721 979058901 888976009 981974948 526644776 272302715 163317927 666969107 678284421 81703534 494619086 258702895 530194828 560638757 672627326 169520168 567554823 125447208 787068009 729727106 618588978 696806037 78622454 657728661 133260605 444923806 757174207 391781644 499945934 757149449 81486099 199840358 481239420 697215407 785755764 529287544 932280149 618886141 313467162 292332522 752739161 627794038 778301551 687361717 345148668 606456878 955058833 789485227 614463912 223104848 607698644 355461871 399557945 724538778 19328061 450893176 616950399 852629724 285551623 506843027 304162239 185783165 523873314 223339614 504013619 561221878 725247407 182766414 667859333 938412116 582404485 740455594 70888024 594174138 391072944 496213517 832725695 536592861 529361644 666067688 395605956 832556166 912291630 829461757 86570211 577511188 983655964 939260645 410015884 524669431 703075984 809382540 5179044 801916470 152618521 353013167 288800516 12862442 676859257 870969445 365088249 713902273 999055144 680469907 40494274 14511740 667243471 720584566 138785302 440655729 880398030 982635038 110866075 53631753 302982840 38494189 404278640 678282819 866761682 462449179 198010532 419656239 773210775 874125109 610408380 892516468 854600758 153472410 399812145 442393036 332239122 72374781 559519727 889424002 722209601 191087078 685255640 681740539 814755086 228708401 640488511 157242410 956535672 3532173 139859310 28150297 449966256 624967933 667963424 498498151 294020255 331589211 453934599 173225157 715568478 658689232 151881799 881097080 167070651 286195550 752979961 179202522 440252859 959036246 122039977 530110169 269918994 968615138 969820377 211709815 487954861 647921532 837624956 237142344 207809577 585282677 452873083 867449079 112057433 46369647 707177524 151256769 893351363 604545763 683551222 603514616 463381539 900853404 615100806 612251265 102938600 683719226 448879004 125129047 337782450 489024433 375186791 149553926 752522202 612415431 472491269 445484336 140716266 256214169 885707788 549197324 121515040 55678998 792851460 71939298 33740016 74004611 623079659 108238480 212943999 287156469 94324655 613775880 289749545 796345818 123071671 38717135 592223739 117945201 410100827 195856768 47595833 979729485 966333799 354765383 932716250 184238550 773506460 412959079 89112071 43105991 168232495 523410356 565880992 689719729 511466057 3382042 439059382 613818231 128170373 447398164 742916114 213895120 295990900 288408373 444430509 855884233 659060508 85300643 797241654 910039616 400072053 529103766 255361679 215365226 943338475 479077854 63581008 992618573 278992863 549264731 929925699 501161799 109676070 336195970 20151526 384729733 796289416 614473951 630689260 38205325 772436290 461017997 100274108 729084085 748956549 764824000 320314609 461842345 926153716 86163515 654088408 173027305 448925738 60698842 572325365 26297160 241761842 656751882 467787902 102500974 153992461 279949388 302331614 466327895 511534384 159514294 523256884 865430994 77218563 526120817 853220561 832987652 387640163 457185596 403398334 916752098 920123936 130031335 660568115 102216378 530673792 774388185 27541025 556955051 754209210 388094091 317391530 770460711 471574396 325720331 941458339 980437880 250969702 235877754 877646617 804893753 41734285 450675342 409476553 143929561 957174777 292730897 536389542 263973404 345097511 258773344 202705494 813035417 951829383 576923116 829661110 801649212 65910783 969043901 182632530 672861382 580085606 576018922 304344557 671948872 499891978 987643170 827790847 357929132 413120299 784185894 805573682 704564012 560126845 370798156 892233957 870629593 999972778 213140990 433751977 693703445 583876046 284820793 566192070 510393369 417259769 16437263 651116215 229754736 360928176 623497509 13980329 730373242 928464493 880793653 249129729 769735402 296427546 460874381 961146067 672647497 648137882 288369551 788306283 64946545 653088577 375607599 938958536 438381842 595630422 276841592 576969244 549003312 83705496 128460807 427693646 244367266 898393526 424257678 522767991 847718805 444058326 748701011 403769448 312995336 94415375 40476846 3290403 749793614 796131310 339524239 981414238 335819919 271235573 38760181 712666628 324332102 623377175 918316664 224275635 113745604 852791870 840222912 228588094 131260588 528300742 854322443 109607212 584274293 63497983 690703019 55060535 821691371 501878958 651915654 885247183 936759983 10698636 198630036 703939477 208368818 831120838 196718181 191621856 504571326 808046203 972386712 588642619 450661101 620692546 285682533 621916645 321625392 474581409 921994260 155394895 479422921 353143191 407132036 361120162 313871057 588858387 805633957 975692598 548707763 623056506 118815486 250484508 559168943 488629797 350233384 8702870 665472600 457613536 849614160 878324377 928696342 425079661 169285305 201995346 52726437 911436799 20984632 476977054 685535636 195772095 504628662 463084688 741590215 918904395 207095986 93940463 691956470 585469490 776125628 153879733 925919276 426204025 892951803 554027153 887177800 492701465 395611560 345726054 171943295 801378430 487346321 388864970 122524376 840154633 147232663 62452872 95754927 37895055 694690608 471740702 997688114 968669913 874971366 833464128 661085927 194351138 414783957 172872787 369186596 552396956 876764977 524581362 160937622 164969195 972335806 555850861 708662203 737286056 131094870 317942597 543479655 842048479 704339815 672306610 67973443 878498193 736488818 251249949 18635337 619184179 367217293 454733734 859735370 680186670 355331810 369664671 449111912 914706013 737125934 95196430 232586908 112611985 783343683 102218799 86254641 605670416 94040966 940145648 177807687 314970898 856728433 403816308 687797073 197701187 445372690 875829137 710002327 419328836 987059595 4445521 523927733 230529322 690715280 515037813 822183194 352787197 650117356 822801389 990915466 108784187 555490044 620954209 567626397 781345618 231714610 180287659 65102909 651523113 571899539 172236379 502414380 388777112 634168122 615906866 53794428 52888811 763505363 456013991 45628949 300263011 516769568 155534949 890023730 99658677 131089528 607374027 910654948 692237193 985484355 747216491 627446926 109117180 313195391 833776011 657470567 832084510 802290494 650587303 919910907 291072117 454505254 359134957 620657578 510464377 913084399 622221503 132554280 170402581 88729577 700813365 49029883 505525805 603531635 468989336 251055361 189162770 819118469 530899944 504362727 876978703 551488039 857299287 738453426 637391840 543554807 129399756 625987386 605151798 508991400 487256417 113548970 767163444 493070973 805468390 416568578 947873525 923738322 719329883 497950613 292633092 328179604 34879866 955490955 153823201 194150851 167220778 384510816 429484163 604036855 688973581 3695971 957641169 212973529 158628851 151728696 889889320 316133541 918262885 911358039 688252120 573199278 55458331 218011018 805280935 890872282 193099142 642054515 13775436 699275042 938652743 32263684 428719861 497532180 142014390 397121029 102643394 921278801 474735964 826337169 20928839 693153295 419270009 172984985 640391694 684490903 218315647 662942047 829019411 735728584 933091476 833697533 739671878 138347667 301955604 550915036 233253644 649538173 138559501 318273597 301329087 952793120 620055490 776374452 591549225 92084137 465428009 745548455 15963149 897084252 249655405 367488723 356625566 121523724 317253740 592956360 855771142 797982115 541403449 169502824 557701601 433816480 690751387 44564588 910451903 28813204 237639309 492935391 28216997 539034020 62641596 937559200 779721612 379542282 177980428 760377061 389528033 724177556 570930196 368758195 602785540 569920291 603182237 349517927 549595593 296052782 46269734 218629680 504386810 382109756 252782691 394359442 395766226 527306093 591348410 823715812 15894659 83059698 523105988 860968403 122214577 829916817 596582354 303480285 220039670 49499426 694622310 389480919 437869148 868191508 55749813 108468328 246161126 869314537 661282604 137022859 165298695 454623157 782139112 111677201 738312744 689343907 656474172 542014749 315206695 659250800 779600687 539159718 968281043 169839342 701408763 629604856 425058417 1489539 82258319 853888819 498511162 339283879 726730766 623817418 661423066 552194153 362458958 701773318 745181939 481120491 618320730 651853185 844219032 326801378 552313585 624406443 217770194 756152599 188408836 435403081 216031775 783757288 508161084 193689072 284015086 44993991 24374641 558592654 457593124 124862138 214592052 626622434 194714265 719735770 118437958 24185599 70839708 809473492 993305375 653522893 360093291 322739051 589736552 86297992 554436796 326619635 895604353 810039103 278048823 255217112 841031420 332192854 51487482 931312405 474445088 340189445 5352980 477616573 829073511 296642262 765926922 637383286 989469952 936265003 773695828 832436473 302479437 258458549 859304673 500350612 53269862 403668222 209612431 974038184 685262741 832294113 318768052 788153130 331497688 458456844 240414104 964695334 96498275 362656133 88846328 312760120 339721499 498010402 18021765 612433937 879642139 336108047 285954659 23681272 317528883 439884364 579182762 312550982 939177828 525762093 855113961 57171433 794629989 928774360 754725534 57058274 325894689 354901194 127179967 134201031 329914167 675805267 38801972 986200641 794485113 784656405 780332122 821293455 389527405 467795337 747890049 55298050 219208655 883584889 385181039 65551231 127842317 204276359 726758364 426663168 176993482 932720037 107422452 876472595 970491483 274242715 236676568 877546073 23646541 30512773 645235997 161571848 385521885 24793682 736821579 258367082 36765054 97931078 427949407 745060700 434204503 44326264 784098121 161140944 386074306 829652565 88044655 619399499 459556047 111858971 15114280 672953447 811533758 688942943 354768962 215222610 219064713 931652488 171308413 188499278 247785560 705782097 589916174 19351087 502115082 580641867 943835677 555176160 685621171 733245528 95078471 489696734 53223448 334366257 929441820 549113275 451532341 822555106 529312930 565138333 211861175 648012105 610737872 121054140 171302275 117509786 544547348 542317543 816717357 180569821 306190030 897090560 198562946 186638959 563704531 209763451 862887166 770387325 881227754 855804131 236792150 746066060 785924178 891407958 391166192 185081076 289920314 191088132 729580902 60469600 247189832 807801267 241655047 561268815 264675603 936911934 736481622 930290838 362402729 933759505 248145289 951269852 160146698 389526959 264889099 706218269 125785258 291055149 193686010 388161832 505021427 285709236 118433706 982056737 962108609 988324354 92020000 203901695 379346916 690578153 915664279 593875471 817199009 587682511 771232511 631073135 233010 362285869 369357945 863627924 152111169 655854865 593661660 540459973 191001457 745949083 932744499 899257501 550814933 778321027 93130557 466131085 95804791 707018386 254921196 964797271 728145107 699348004 609779174 784412052 518927193 342619565 301967367 252503343 732213486 291538992 67462621 967613928 36277099 729509321 699007531 738524115 113857309 259400229 354552166 629770198 569201475 271385861 117212731 634901550 414738068 356487359 867689991 18904810 632015286 36541117 559855965 247174255 730982856 285474811 534109828 666438130 892161753 872462733 354842103 368313857 989024366 217984279 489122531 165547259 494518272 151158611 106462124 217447315 59307900 947747471 200721512 191889745 616425921 636225836 461374818 351457553 604224805 646458912 710550937 493866881 449773041 988911989 219963710 798036391 262015200 863836872 399001658 698600794 814263204 168856522 81351333 187827140 593569121 933436099 655973712 302837734 47427376 50321674 688785980 982630676 355592350 202178446 455892257 583485301 948607530 635861840 709012456 333291140 566848970 437683686 385447217 892512146 451359590 110181370 79027918 918532161 141561180 738863049 719490630 97412362 246832379 45333413 10735443 148884920 324356872 467157620 821808228 699478507 126580284 434176046 634724636 708896663 840663491 118337634 694889169 761367938 109472702 196482226 561804558 511998921 860752322 319619922 577864721 523275355 144371543 941567373 505697614 900518780 775684731 85646400 730401770 84187204 607501852 566441053 606145344 353851166 650774689 302328682 76663648 592745545 479577698 220287487 418359179 837029978 850743851 807435852 294228152 950282936 839205310 25642640 732962322 737279519 471099981 758532515 833168248 154500382 180430596 102754669 287521276 620819097 125029245 556490092 52789349 709972039 854964809 609576243 636592557 541750069 947248494 926925541 7305091 818477121 13513444 295054782 645691593 951529120 876870423 682974858 424402967 344457304 992409960 17578540 15927350 777557190 337150124 999826457 311846567 192397594 725455787 375812314 804266010 991141591 792381858 55272078 623092983 587972692 23233218 262012773 48455640 200222013 951775919 814247974 372770317 418544402 621873409 244048554 422142998 213822886 201857478 321724510 830051373 370462113 787193854 782653637 845094586 702938367 755187742 450354676 623085276 62702991 441577614 552271125 1785575 821078389 511533611 693185252 468650720 252066729 881538245 606906421 997273859 73369206 554958754 318474348 274952254 341712891 163571193 61261827 825224883 135024301 507133304 295192840 592664634 622856147 807483071 464244124 511240924 593880585 381937123 878731381 180490585 454912958 798664428 253706588 900089763 448513462 104682583 407333808 532301153 804877192 342946196 434872034 94055021 853989408 752954249 935092983 545202006 639541311 834592525 245212425 466082271 939238134 785088366 635600838 960461694 98428463 432592620 962675695 507114974 229660452 119863611 174566619 840729949 398431974 136070661 853244145 692854671 638771927 835726694 302437937 9211321 252184368 791634030 591303340 767300439 551335292 616995747 437197575 559072918 283847451 806874492 216238845 627414746 141382592 889559783 947256794 412091194 125816820 294797251 96783104 663031551 482493328 591522663 308039270 988389417 196777031 493301530 315724052 634812394 513008154 388136088 784936872 704173864 279035361 909102227 707531988 549982975 437645257 171916080 591173085 662706493 292698065 649657990 383982878 475825381 810461772 239690531 378112643 569971373 909780578 198801030 923363342 952234879 320550542 351461286 108713558 744966907 403690273 378300265 44778755 536263668 974024894 869051694 958033235 24646895 605863132 696826180 546641049 641023143 991661639 659129200 590971064 533209227 711793568 243752299 989813932 48492350 811749848 149874530 396388097 309181207 996526777 218063476 593223770 210402463 922174813 248481592 285983212 764787477 267443892 366410292 532584448 305792237 138117635 870623335 52269684 253698124 749533024 738760640 812064571 390830990 505005111 87047588 885881048 379980225 80614344 773240172 608477927 386571047 631378342 832483044 875718805 522563512 137051193 231317198 750469411 612902301 924156733 587834205 877656678 32424886 932011073 224500922 571814730 524611605 552404777 429806467 755183178 101346945 118520493 252610887 176726522 885376756 510186200 932749067 924836222 854352414 360465801 778941384 595519248 626419679 147583733 399703786 407488125 377852881 168555043 427453139 184581032 303299515 260564846 529633110 459927302 228969503 801536775 136015420 420898849 84795565 496510833 590762946 421342230 509584590 13810691 243264281 857544214 755319834 192934762 562233061 692230120 351842530 808296484 425503167 970375270 682265767 230236421 765344947 392000507 772748448 16985014 416909762 368901420 295742009 456211249 60635745 410951436 770190222 351025223 272819705 736071110 197791220 818450970 102829157 707512598 586668145 380288163 103325815 813892304 185207871 109153581 528047219 598952792 551509837 890567384 155342481 717067817 783648446 197539095 51601791 414078031 448323943 713130034 28512990 422743788 323119189 745385925 66945472 211815862 102893381 950584127 781635377 960800119 487904043 292666468 433652395 652533388 913203372 942316492 841864863 666781543 497547427 367670625 499644147 708177166 327722655 868127973 505000831 182804377 758563684 790357098 961167 425231031 617944422 841378008 988205412 664941098 75085137 101100138 46088371 494095430 121517699 877688625 285979428 858316918 391294352 535743376 862161364 878316471 696978110 244070078 95635155 218516252 391580294 743082311 29819303 390173768 680000537 548910987 893766600 994830327 843279321 139017278 367905058 69546613 501285851 695011558 867135638 86054949 95925356 952174176 190259832 480906747 316256393 649400668 746955026 176429570 713754725 503646940 352503584 822478296 77538791 526297785 36628051 276356909 674084649 206812702 500130766 493870152 835194106 513338379 61596844 761528962 632855389 462253011 406130296 574791880 348254216 4869022 291576243 537048605 357330150 8510696 507847761 689790486 393622166 300980480 205931580 939310940 710638313 728633738 376149456 162004013 252404071 105923838 838547037 926918364 291168715 221332262 674329257 602144333 26077827 501252516 201527659 896770170 940667185 339514474 189455825 109047536 22713132 934352959 373381115 186432850 901964288 184277825 206784381 588898261 489959401 232725342 959884769 203310531 523512924 815867097 219995939 19653112 326386815 648701132 974844467 49802088 539933612 850607520 186398070 222966167 274461682 258001814 37238598 540662559 183091860 249626433 575385197 652229166 541022344 724625418 62114990 958717189 440341240 675354283 976356669 559578234 657329093 308092852 523728705 607558263 385731583 344691722 920556121 876635769 526679662 302665571 485744916 982477841 790236684 419196107 680017783 533703014 479814281 232289569 521296764 301942706 774739142 563194266 899927949 471718849 431594330 918306366 944905997 601072245 419521296 135303270 570009295 357629764 20668775 466443589 175938461 829671096 254018833 306503259 600682674 891103982 408015476 371197955 924962368 203240984 681291308 253301223 666888684 844014843 926989191 300248966 452947789 30490481 537238791 621488309 546159728 623603945 548818148 143867931 947769431 388128482 741109128 571442099 63054197 470891379 755702289 545779022 367098931 563610566 524141778 795408654 828885871 344410265 629067730 622447597 787010808 887021244 38362443 654415924 685777427 204592533 765331500 178868740 490909177 334659999 775403160 373011408 944555094 425296102 195507301 951861985 666649036 357963660 823926686 715748305 959130734 775427656 949626113 684869904 148035653 43173090 647433346 695873891 646026703 29507768 229913542 435724383 339442299 372319549 459849897 975127794 901136174 523252340 835472313 656537051 29977281 587891065 880946872 398156333 681774208 575324408 644249885 572200912 357682860 266679732 76751508 721478144 514192634 993152258 68918650 352089548 225537811 39429451 781073250 243223192 670337810 558009998 785360786 1849499 604828169 377747675 668150150 73624930 825857660 226394841 304203628 970315851 796223715 7354945 393586343 526191371 230129197 290316896 343322189 55896617 894330424 284163737 641921449 23972224 827905114 953012449 351215289 326932673 674912219 461655617 59935920 982153199 968348280 613910872 817091190 975129057 843802850 128808662 107283747 588951747 821984573 508892162 736532103 585749141 457254818 744031541 158542758 358855083 451373213 16234589 973746484 457469739 686842287 224050043 157015069 582019474 990775245 649090853 557540864 488108335 434391519 272812805 847350190 487519399 439808834 588750424 116312496 317866351 390314567 503640175 688759487 999625301 27434673 780413745 869752906 545517560 501831227 737184151 384628979 252218187 537668368 999519279 555169554 482270230 64515665 330478491 794929968 988440949 788078227 251124495 948094094 56887383 864932446 775929046 586337692 475606016 404193455 36911308 277024898 881539207 16558454 51609317 143942554 220971865 106488345 995147686 611075571 213982644 941124592 79821991 500760016 286495021 718457542 863647511 642119463 52725803 274998110 605966391 874313763 517408873 956060652 127342558 61593507 789235576 623057048 394899187 124800440 901839162 687615 796165111 51811883 428168808 471753649 867302265 605112564 727008014 751385268 133390495 886125764 114853642 528493567 717406627 858201468 412711568 712420096 605406804 171068084 790856360 812316183 129355409 359415861 693916590 25065753 240949970 889625727 393005010 851255758 950322335 483293508 117245846 764145778 176621334 437383659 495920211 857620536 34247529 267862030 653358772 63416770 426714462 352147964 831500088 159748010 618382285 933880632 711458996 939925245 130779430 290924280 666481871 815700411 34489320 967062182 706861189 651051864 157902123 620727395 16540837 335251774 741294359 354056575 550076499 155240777 1439595 584151298 299347846 997832777 5374455 512380967 639234443 940043396 449073954 881630939 705419648 663277617 693421668 946156610 899919066 713159165 176790733 405028659 552039392 892032394 71294845 169963191 408160813 664813036 356910122 200697998 906613042 115013674 669995933 934176681 808037041 591675843 601733685 751609009 421152067 662245158 830716002 154283647 685089491 818738232 526979883 905227938 145109793 766149842 425729705 619446236 516189761 625434945 772077705 452382373 816563993 900634309 935778958 429330855 205811686 217603090 143824653 736525376 494489271 37022161 774220656 179360515 828722673 228112160 252286132 523419703 701880521 737781774 267000810 258875478 385082829 381666336 355150521 244576400 549593948 613372111 389880794 738235718 1182249 935364616 374757787 349163151 621689788 504849578 175785053 708287158 318189808 5087499 331923734 961182393 495564406 534607732 421872080 647641292 278323537 447154336 219791912 457285844 87453017 655746625 331955664 284413165 628968376 83507579 113224973 461243365 908360559 428478311 98143033 127727038 837757394 361096594 156140866 109666863 954316040 377441915 621025322 814441252 326951564 563329560 983958917 532998458 975851439 71144530 363517438 152672324 656869395 500078980 795420114 575420361 278122545 379830016 548577619 171756931 135547860 145078154 19655526 15257569 279559836 179521499 222841861 654066310 947171965 375615775 374819518 448110792 193474621 612977015 13451571 278174257 556977657 707875448 264780696 310042882 304880544 994815915 911821624 332048555 310970742 696827659 647681777 469672020 945395347 397127562 283415987 313786712 952984930 993168780 634315524 746609604 789464098 563247465 273359231 117624541 244305768 739152367 500981072 354829719 687741595 641266911 892542138 389704990 13112951 884854636 782976145 219849041 399046539 441581759 888659648 597073730 929546939 467345013 473545925 486484919 382498238 895672607 61640752 254570924 274287521 957692609 987263272 701159119 180573506 446029139 294840037 259251203 177825749 795988291 53902903 97600477 526074723 240230385 576992254 788432682 760729414 949334066 746880431 694084967 633837743 670805710 380309462 849318728 716854560 267148546 493518990 851605810 775525618 897666815 920387594 648238528 876750801 67361897 601445648 981530177 736648506 649476312 817564025 229313848 731629828 616382554 851906739 372709595 51960276 125750255 451915839 994421141 57398183 432065548 943463475 942317701 675611724 162267417 459506104 551512061 937923559 86389747 600810893 821904899 364007280 919380586 943478402 537538259 671092018 130675140 721497086 666409306 960976716 654704953 672256634 578001341 253953075 662772853 250262532 568106448 423636270 838891544 23457469 717837216 513800409 423281209 268255579 132386794 386292643 407044319 960216488 578778273 862008400 638340743 572878593 847740780 466796151 895894689 659955415 830342693 42983684 208006675 65576753 298689883 670730424 748304308 765616937 179618001 994519204 228174546 161565547 546582013 472027314 769925037 610034361 695059082 620401692 688191481 233297513 354138326 379761651 630609760 189149413 894526068 627092377 281533438 820183594 995647660 742671175 181157091 264252490 615865078 256345224 767021717 975220714 414286723 890366652 532561291 147800260 678141364 508518294 571193523 441877030 290367648 437824414 995837421 310470002 513621395 987309744 206105229 579025564 404796041 519501436 257115101 702036655 976558263 78784772 69047192 331387976 787113219 581988640 26507889 223218201 720997511 834659069 564212362 937601896 468965650 726332570 321205757 284489869 730584486 213340233 873563479 382925175 250147579 3263796 995211799 88732200 198545403 612132822 617046324 956065588 707506244 116754558 202840468 184468038 588476073 576079312 100295318 889416860 129241009 270881603 996826761 548120454 43716119 274292643 861183794 618777835 783248712 514762640 618002507 250021827 423933928 828703742 17814014 472159902 608212045 274465972 794880878 763154971 146356994 234316493 494526254 526573938 816804678 798450489 611343303 751829739 229889931 308100413 294927415 954895973 394268663 564286703 733481069 570994640 852109542 471003579 915706830 281396659 719021926 107755745 159670707 763235239 328098745 726407156 568021481 489951449 722985943 298595164 990318895 938420876 366741481 727757013 703288763 317925525 827060943 673731566 871523766 442668509 508302491 776274571 331537851 393201891 155298068 784753508 261400412 155777079 188580404 173558404 298039197 934549248 819372714 939112906 588520823 91655031 672108121 961898347 106666582 271151466 697693399 620182638 382194332 714878650 602456047 376191278 346370076 891838429 93078559 728549852 552224415 931707996 830059803 690467067 783431778 727294806 666222152 229777890 160583830 910944764 340324162 674459966 397041119 574618643 705293398 401611661 139535574 580873333 2057993 339602339 587793031 514855824 109309583 989586729 780741364 883860453 655337556 174812953 936949136 109633674 213410935 931321923 40975300 593565609 651110986 56150988 405021549 704481535 227172564 846370218 703849308 224679518 671052623 538951465 926909909 495419435 575876010 218255209 134643984 505392608 888497415 178143709 232167356 217859723 6872638 818393805 439229815 959080269 490264665 555510741 192652119 610946525 91117846 406986340 973012068 811728643 738312040 746956862 406791707 760749853 98612726 447975419 479076589 453406877 677507483 211390853 661985469 40034952 304466916 787914398 809001318 181916408 949251477 625452376 310084915 568773532 646460708 393459866 907157349 630767155 392727869 969276066 205896369 487989013 162340668 159706494 555471807 125736874 439767478 744597393 555801004 376029936 757712624 779524629 260609161 326355449 742237030 93449107 530406873 220099690 373027910 58526828 4714263 445391102 569745394 45552980 333003310 451386881 183992450 66851281 812913663 371935190 917023296 976317632 253257951 616024434 331416618 844394193 716506901 16501470 767771251 572218118 781765984 583717816 87827202 79030584 47587696 34060722 483570673 875099282 642378857 658049810 340698639 921559572 168571235 683349809 912889695 147776273 595608044 204104444 690108311 184575921 859184260 462869366 814245538 492831600 976359711 586445876 854778654 101054365 598805927 632878047 967128287 95636956 707210360 481705142 483621738 952225957 39906018 383146249 159201403 144003522 103924139 965665215 286132863 280140501 24060298 699424977 304654106 68037072 262004653 882569677 892679075 488025466 838823476 172267092 799993251 251398641 445535923 782953628 240805722 436268835 919321780 266955246 719218746 840090451 498807859 256522025 311416682 564763546 21219872 839638333 95994436 146149476 311497441 747191217 636418263 633934319 250031309 500926750 507287653 453743823 713739442 105578930 582170598 895976045 265381967 707296174 586915972 993527171 531133659 278482408 199112733 671132833 423009660 770597450 54994885 331699884 276408273 978789969 914277953 586763610 165577833 664165263 753413260 569081271 54679882 582878249 914924117 477505186 72879723 874919769 670726272 400471376 779709497 970904557 219472289 296513993 770425366 374267078 653926020 693828966 442632917 212371290 106234536 24315225 321502016 956305459 394239166 715210021 675438226 583062894 586981167 280460066 114918654 449690429 638708884 154299131 834893862 351171685 324961852 644452399 879818660 596411073 620875945 96060051 140535684 487243709 480460819 805379278 916943560 792913115 687304419 848078555 659137507 882223154 172442681 999567499 872488767 118313194 263628903 829107712 706662839 698544065 776034164 178400307 566050077 352227721 115161499 444339056 934958773 773566375 122831305 566574037 411541432 980326038 436218914 712099286 462956499 890450018 404055164 795619004 268563365 798246702 180587746 677806881 388661060 306081710 104486930 478440821 564095161 952586669 539964416 324423293 291473023 802771081 330026577 967121358 383410184 468287410 726716129 325263446 902612024 405677871 580801597 342617300 274571240 938446872 175669290 23925851 179002468 338817309 7576604 72465107 526544877 690103549 866017215 88129400 329292856 663485200 317601138 652984153 603264750 349674430 135094983 849809370 828186154 383451398 85616901 950216498 689502462 850458360 541931942 279322350 67787758 192641083 190832345 546706540 799173491 897152136 815536641 176465249 775271033 721336109 548395572 738181716 164827873 933422474 593442492 771417376 217355776 158635927 11322778 578234742 580111646 179139165 567252990 364387161 72008696 871607928 895217360 331532704 154513727 685402780 689232171 621932663 953835287 69698061 432622300 593567198 377861529 69488421 461874919 994199592 437420881 471975378 935321602 595632766 632418240 533431829 657216793 936436058 944410587 151423620 413131208 905465100 376913034 731088584 142523620 183626297 185830186 878729760 884874995 89808982 426018316 3927005 683665071 389463089 438959347 528140772 881814406 571054697 842447258 366884655 837597725 108253681 889598508 892558412 954986185 934182545 146596298 967631836 190607380 542177125 5378825 689476373 984428350 74316124 532356209 211664961 875373241 226801082 126654719 234471741 47790252 119662230 613528227 938810363 9468274 591276381 716702915 721480448 288074776 85352781 886899895 742020070 880791778 469445627 198332491 767593435 312950214 777494990 912491584 928250913 797314799 969757313 10549450 735587468 333058363 235570085 869739539 125830151 244990654 863419164 934122679 913774863 390112573 292119967 848358471 380649014 325706420 722712889 847870918 914785953 483846609 934102474 240426543 311152779 375550070 661267334 353144044 651885504 896238138 670940531 615298656 635673635 440301801 78775278 303026783 483745832 174029056 684911399 782272689 875283802 771140146 390560 673738130 260460246 385260005 426281138 347567669 489981903 773450166 926135559 386262844 926490632 37300721 175771425 849590594 840705629 680446489 807937490 873383761 431140154 407392614 782664898 168915308 296473890 524048194 103381229 10963719 417237801 828953547 908329250 171307913 197600635 965434965 653070981 245416145 53548499 100132837 719244045 799979438 458575876 508013494 685288967 410570854 933569140 360540600 163140241 27291440 649942684 190043916 372762656 555773626 568905097 678841993 526189818 320243875 565079646 148256059 993056957 671034882 769282768 295844574 217454806 485493725 770173864 742384231 808259851 230306739 10757957 454500988 677984242 224027635 911591447 914248183 765804919 729502850 377636645 462588006 43206490 889179962 338295432 587913358 875776943 541017189 461078510 686275300 988081500 186327878 293760792 940326418 139360414 659990160 441048668 486727544 605437828 649349357 131720483 685215657 78709362 150077816 685498988 436089578 948803744 384522819 957809992 174932406 109012633 694028498 494740316 63613244 839491773 693051550 417172834 373532127 941881279 120087444 645193128 147432885 78727463 53585555 437497999 743230729 796539856 97144818 32640269 140160218 790842987 893929463 808375596 107728217 238016507 914217824 729631880 951407215 609566295 320266206 458006741 715642421 718217388 348275350 607423063 487119737 543386616 299362463 137322601 104758848 598760848 332025734 3675127 472216638 675227 391289292 330640387 13821280 882706324 487434598 426364451 198044738 173561548 773383229 840195329 823571130 284578533 769288364 150818522 200231499 78980696 865370117 900446720 923503282 777569008 825684236 298676568 28471390 865338957 571494010 891951325 969920751 300036194 169750907 407294491 249395134 84859896 233821232 205809844 940350037 111505705 233422382 41889503 156832498 910340069 96541438 871099876 174957833 880081520 65295003 945562785 315823039 534478306 832196599 697877512 231703152 61997734 599940470 474427807 678639401 846224635 881458032 602387966 865482542 678435190 372790452 509864788 942416758 133300606 461387520 874598883 795589930 732420047 207557002 434573440 150875178 44536056 338477946 835663636 765793671 560186333 10007661 51050781 485113866 190891573 933086452 428788781 857825964 697850636 836827411 612807274 652129564 844757315 679486146 216720141 987715644 978390539 468283503 196761315 612336292 825680750 890319227 674616015 860308766 432862406 330457272 116457030 913146152 951041860 522388721 504312785 270737781 962402922 727286115 43581327 99021932 947908753 473398332 819855792 415035560 867175780 454744355 350292731 694638454 672516195 655059887 55674697 31490394 109316962 398905838 323268615 52313226 311822599 879498976 166752952 124697457 798573903 217598714 139529073 488309038 57481225 130090660 410855771 563333138 486624601 228927163 319983413 627380262 494908471 386829584 211369936 93612450 762403566 986660582 437516433 557641079 131507613 766273400 901807602 195023302 383720121 873903217 228488704 970311783 403134345 51266674 233479391 393219428 419688617 837431695 270432578 413978490 313234056 369865170 871011059 514524319 218378217 238894007 481497425 49155702 37361254 849508526 320030157 432425180 262011112 10915741 405242988 500092000 64839728 151085403 404130376 440427714 359859538 580925750 479713807 394465659 375698997 982199150 307298946 970975797 873281556 227977144 894923511 427763535 455378431 97501115 146159064 716747354 253720923 761123222 944839970 122380446 652329566 115864152 839053543 626109334 819813524 827279495 538871244 662977903 113936221 812006554 58227084 427664782 794990700 953151871 735528819 545747719 916462153 634186518 502182627 83104038 247030480 20264627 562859474 29973994 333997488 946445728 327189834 831711877 982847726 526827417 191405033 124401117 234521439 891978062 27122783 311601934 99958065 338487524 85526002 872011238 614329954 76615796 710915836 935381352 758894407 511283851 560093036 703108170 240870151 684854441 258115393 220986742 188041246 379986370 861026067 364507789 616806619 82535104 1711242 205418079 960621026 909102846 187915492 12737396 276918954 11166926 777308019 830131334 876759551 1686517 768786461 976031493 72972417 977623594 239373275 699344786 90575140 769870746 181688634 625408644 254191023 559119207 342368477 16904806 491899709 420975140 224473080 56942711 424490686 256704603 49024727 739596072 859059575 599809287 266229077 403058850 571572606 497304090 570890597 217721661 205402175 118529272 70205837 194444298 343044346 898395386 91947366 523250507 602787650 440104941 736649758 567809781 560079743 714420880 34272501 485692213 620308333 496052505 619814851 546159336 976585371 774852529 732461937 77075489 583127277 457900275 978156155 577287847 936002843 861969009 207015797 878754420 235296559 553410863 683168643 667124279 82570507 53049894 986863839 789050835 258831073 99923650 158072150 167997662 650518969 127532901 595301067 423046435 860490734 731630050 345135027 630478112 430784433 226963458 578713496 574147209 259373445 187809283 331104151 250962115 113445569 695944979 116873953 245354345 211456529 107029465 761271613 90796235 209134582 831877357 232499588 314971754 246914369 368185691 964487716 647578494 155124636 124540709 164901790 84362096 113694721 192915390 818728201 616400480 364014912 320166543 270714508 790557088 645182590 382712181 867953639 475896374 903293873 681945409 942103787 77036894 418017317 835101239 686730237 779038470 847506169 231729808 906950808 312058449 266023331 209009400 74146248 98713621 306472040 917359376 881385647 291086684 223921893 843641837 389548803 478781415 981139593 959178391 101844878 516094630 802865432 431603339 135911597 632603201 468396329 641366074 659447506 554260370 634866857 718394760 992160002 899142697 299862359 831156813 193369432 923123911 666563397 916423383 847987072 495100899 718464861 648845414 580700477 299967528 341302234 546468271 905413347 729666293 692435659 709078874 418079197 271130843 139513491 598709380 904080168 467634723 84053100 562074430 484866518 802244422 480685279 813627147 125970317 931638643 123575885 485017958 668604165 648105740 806135658 703127610 704469646 548962345 177373628 785596520 298765959 970278675 25765408 751842373 863605736 683017418 871561542 250555417 108338361 693564288 856031792 355693729 990541977 757897500 660447415 719589773 727330104 156859832 34382342 510420483 137924317 401572388 786887453 971512602 653599968 282536032 509247823 785179232 272505393 421032997 409660612 26258005 959702992 572196701 681211640 499906797 429815122 479319207 212496186 12003858 920997219 563903444 865870126 305302048 959903294 795717229 417213772 45028968 588377143 311520298 453522270 102807469 129983538 754121596 710542598 620514985 508064296 164535300 754208821 126521993 755622825 579054874 243300789 229142893 38455893 494254151 863153057 988239082 642080866 100526539 998493672 301185671 204014361 472117016 755043533 233662531 276979033 63697748 130484073 252311821 150584851 498719195 610824232 203462475 777061580 296488123 588713800 75083092 940196382 197635383 301277533 517646838 416017975 412249669 26412496 492876016 999243608 596460816 453181275 528568697 936199255 922846070 747964558 187107000 192819997 172947594 590903374 44475465 747026217 170521363 142206032 879507134 597740044 126820876 992491426 598124060 387385323 141296930 812082979 976146010 786734080 321944377 356343814 651239909 142689561 903918311 261908563 357274143 891904536 69006584 2760038 410990555 74283121 578928872 429203566 250230243 523262127 592918380 931865839 30965619 311196911 300749545 532761409 686904507 47539555 501823995 289522446 478450528 553409744 564579312 611907032 38562043 21690640 983186251 453374321 689855384 970753425 106714689 412091520 863520825 672237013 668778303 55929603 628979537 894339568 744747874 676623560 995541834 525519629 790644477 800989170 210480383 716348905 679686679 444833658 953544770 227016022 778702058 76388268 905958999 752405690 510486629 848863910 640289911 512300685 892807851 602586844 976687183 545023711 945406354 693591959 146417278 91805135 618732837 533769585 514026778 270461973 15966243 239579354 383111724 383335289 367879805 351026838 410547759 94478169 673986524 56575037 64817813 255530279 928426008 391799482 486578754 337531113 952286146 367732429 788486671 893076920 772403867 573304713 763529032 689035329 477015067 51288790 9176623 733856071 854070763 7395312 642029687 711158303 906316395 793674214 764818377 786160946 431334701 737969692 519121474 399320702 976611704 159771337 494443763 400031254 255138502 807866746 247668320 692202141 292520774 79699341 44316418 760441295 564559450 582357687 542225861 673692921 178070810 899020671 984486026 204118396 872788688 652773312 270870694 189381966 602845050 434772779 976223073 303523704 407763020 655937987 945440377 359699097 176251435 828384863 181456540 517891937 311343154 25931051 993500657 893058327 489908785 353190439 9073808 548288020 286348073 117162918 156473093 771230278 514782673 677415633 466096849 998900654 450664212 992528930 798196969 41852642 914584209 561103849 472746037 813000076 170585882 161015498 30560786 555767016 24240437 36502077 232280785 57428554 31239582 260273421 222950454 482888086 99146179 841880538 853103097 571365318 404980295 182428055 938335816 18277736 116701055 75464204 614118467 93904669 271268856 386469461 543674495 18739228 778018031 561318241 756290948 594677932 711260887 520690804 578124879 463353005 477306839 897229221 93745361 760439824 541358665 109330529 778440301 558722394 712355645 43962342 517498494 616415270 992294131 215116745 125559503 565851552 759966565 423542896 65998881 306742538 43486907 488968601 735831208 532174906 40947668 421206226 877184654 807951386 854334148 488427006 724666479 669403943 829811024 210730966 134036956 578373107 142648180 864089189 264690648 665883556 628606429 945149323 437955422 586034290 615023216 221191548 978507225 462003244 551516353 848709950 552876457 8379572 938989725 883207470 901434021 2413694 547348608 3196284 154262676 832129302 754965535 116951722 925633971 551452567 287682272 632329745 386066226 778903860 242231389 924934747 807626166 324764082 216416485 434226698 876632025 23535596 128929787 894549488 76347046 311839310 703844053 323940789 229114909 733923163 249981150 314388053 145792949 894843944 201139764 976659615 19090645 997527262 607955498 743884727 639801689 109221691 658959816 701406100 883162131 677094674 860037190 778926979 812394824 790195398 273242005 280804514 481194287 348250579 549490902 363281510 149566070 899883334 376924384 778234645 895777980 812106304 208117438 214014029 271271704 282165366 57066031 893438843 684216465 761269940 621613093 4479077 346925219 32449877 588460358 934182817 528080320 798326989 424991342 97580315 608682445 588770848 91505963 229675155 640778401 174295912 924978240 449932316 911865481 95354962 719320610 455880351 13489863 340952737 841703806 722489942 529415694 220671658 263344049 577925969 82907912 38861783 840374606 997736948 486449872 602404644 458933404 787235191 357901176 893883301 87601686 874426981 797160069 493347582 554752745 364530973 585262446 320816617 593996153 998037589 366004768 404623028 400078812 310986130 436010365 143860160 339359837 779235760 954595800 413349891 98317819 16696672 257500538 189576071 539281127 118662565 503785761 346630121 474479369 790945366 483834492 342493915 941277820 111225504 990314672 153760418 227777550 917898625 332669654 572450968 22410177 215849550 607076986 686071211 934258509 731621678 988929053 43245276 50933915 694550428 149275061 250525634 667845195 259576040 314198312 132892420 462687791 799249591 371419348 819336931 773206478 47832959 490797578 897178029 828447458 987156236 229692814 597993547 787531226 603224318 701961753 547361972 570985561 128516424 147934935 272903799 635436469 765910195 137850346 638264118 283828601 690462041 948771045 757385509 106759651 969116458 351648081 438439823 406142054 926768746 13621547 660190033 299147306 660357681 136479588 597778269 72863879 589331690 775552096 582990137 649844622 755926740 9776760 459208574 971958400 257445508 412436088 438233177 285912660 344220513 756613665 272945676 152665653 286696999 946819240 486385518 200941570 156857189 29775669 264071271 7369933 973113343 877267301 705817206 515394397 675466668 332435401 230365995 261621420 717115768 625027173 799350444 488318056 235834948 815368497 453988404 957475190 296653633 516123292 772182672 193768043 301289081 806022660 17882272 549455377 326910790 129590335 613010396 360090089 906646233 174773269 949263052 577932451 154270900 178180803 699402639 687588519 936638256 81764985 31286869 10601615 777440248 556078301 787975141 131912107 536608908 441375111 198165016 101040251 837319360 163509891 212807772 99291961 469138234 177380562 635350578 109866061 195332087 201802472 868852143 823703766 852083910 526298415 608514047 983083816 920026059 350831747 405208030 639230792 32329214 236036277 922395165 212906354 569542058 6014728 925111331 274250388 14777070 617836215 730130025 534827216 20032575 169944429 297556733 171168766 872154852 185325003 89178112 142723111 691744121 415670757 852502568 733887499 589814381 309322693 620191039 948883356 552117379 164519399 124121249 151775361 225459029 822560700 927663554 183624340 844642252 41015335 524002982 915955812 804224681 568795139 982940263 283151284 257840384 194089626 504222131 607393786 971258040 361655343 635506508 996687073 104410892 261895798 862596742 206653127 966555916 274791703 324481996 507887424 664484381 683169326 838922523 845583761 805897333 240888526 110437508 628359990 20774304 968304505 23906991 653343836 223594238 581888169 796067155 717952103 519101506 818089291 302950335 863162478 895129076 613417279 253711189 294376890 404126704 993101785 633833993 864499787 132035045 581504099 967495910 724745555 662225367 602056857 348387465 458894264 83212958 146880299 359440292 3133078 564100197 101702718 952544636 101176763 252088619 464341995 623140972 672613930 816436037 606646975 106709600 319570072 366817242 227344442 445209947 348755954 447303526 445873488 899154929 443422165 96883256 363441387 414279117 18375445 710655731 867447398 8513069 418745911 441181457 852284947 30441057 118031350 681144155 653706679 920185423 601966529 802191474 991439625 208950002 43291707 813166922 736457270 752946902 888427451 526410665 56562784 45828254 732892874 675602093 723594266 366502783 473727655 480059715 790009838 607534530 26758086 109912753 622836439 966655813 15393868 430569229 108776135 343901691 601664149 766386115 290425634 397091432 143147439 369314322 94664001 551481893 312177628 793131408 220090609 840020578 30155028 983284386 95384817 898965599 475808128 407891205 918447991 141801458 59382272 201428040 648433324 60985860 449138342 984109647 518559531 627372308 393843001 967358930 274321542 289979826 665102259 190011611 854336449 602159877 320676036 929715532 979045333 559340870 984021068 716970839 326935599 403789379 723474916 137708548 672039214 418182621 523161942 661002158 924418216 358916234 262354209 410554502 789959781 418131923 416401654 215129871 924379811 786522327 696630845 56138400 740493457 400977095 576875665 444512741 138872020 445173608 872364608 216233310 215788548 614267796 333566156 41579999 579900208 397763001 758690156 533201679 607374422 915692120 76818828 131657705 208998124 658984071 571929416 147652413 731835994 525001328 301642229 713296944 297843837 607209936 646802073 83842232 399830566 477979256 570631278 678140961 686491545 331977936 106660707 349857162 831000847 38144079 203316379 576945769 477346612 460688388 501281515 963005699 913169833 924205840 326401888 601135861 836803971 959573290 974505911 317569454 507554250 584866585 58288356 204438258 770783227 63916862 120338828 977306968 237954695 942694919 675969162 566122701 402981714 750005373 869259629 236584208 986747444 744383671 115848440 110664243 431046523 177048164 707337634 448525088 470864999 800810822 248630804 38322194 544685 859585969 118285229 407084312 330585589 190328592 793561857 571351189 685489244 484277345 13558358 832650178 204972787 788266676 551672357 649179947 750529342 413608879 708549023 778381102 41159349 487410189 694650150 54165119 380549446 624107546 140421327 949912231 663593425 328720441 178588903 58600576 350146731 508452702 957050987 218153659 818540572 493093781 980961166 61476442 474675425 291191417 385895991 381968694 843744938 416490429 525032064 575028346 261987485 966191015 922055480 374594342 843524561 222094224 178968162 906941581 23092692 831863909 812128180 279116503 787057958 891503401 849801497 417388928 738856892 710042481 695208239 528856535 86549886 841056230 906572234 182147456 11757768 166166727 927781487 604023026 816611053 479553636 865887962 921391098 128950447 978806692 360644473 348932663 924557001 433064576 983844846 728930715 122458213 485862021 464272784 81336048 265473958 499963222 344823275 449448017 196528672 708391720 497839419 548862380 7576411 483782469 444372725 144485191 112384339 87018122 763265599 154784312 742147835 61042664 716880499 892751596 51657397 662836454 886538656 820272545 437774555 545978909 384291081 769549547 168529978 892725179 559669156 848101939 761452178 140211201 645417115 180971571 356656919 485659077 108256719 194410875 709836019 758857969 402507856 992743664 759073217 148927746 616903910 483700295 402827284 562870153 285531787 598621838 346205678 853526190 641810159 520124068 627546953 990487464 585423603 113919420 282110610 771842374 419641646 252443102 273831208 891543145 568078443 890018406 419120098 922655879 445353513 858329219 997396870 146566186 209722650 263337913 787749203 924225391 12273060 228978272 972257144 67657864 711233123 590007842 779391386 173396026 710368933 222625921 911798098 841080928 186985708 368254287 547879085 675266662 358523248 868509491 946567850 879509966 59916955 53796395 767628223 927475887 890038155 810654213 652667989 128129073 905799315 604089060 487183175 97554194 799211962 959049665 756421735 433265700 426650938 7516904 186910458 714787532 548867586 922368631 160527927 201247621 144411701 835148514 545293259 191861339 191449001 696263026 416347735 823441777 8538729 258288833 416958448 520710523 537910067 873133375 461996191 529328196 513440251 494123440 146329823 190527274 721733222 497943980 882821154 242096541 753847888 918371870 527851340 513302947 156664903 184555462 922232630 128744535 226435085 149257143 631839532 160215654 565911833 965453785 811889008 974455440 227897623 475769704 5204405 963459629 830368868 265176435 738694052 543551397 608095891 502760286 852330842 148072695 910000362 741181280 519561192 535267891 232550117 548871430 796357074 906765312 372050610 283042734 353232273 420163095 662491060 843067149 608615441 532634565 186639105 141172650 86489907 823265901 812922852 635160928 92774988 454188548 677129307 383797728 217588389 21186964 960714137 888287532 873933817 801261497 958339717 991690270 155933433 836344615 244888122 161630943 808264139 421735714 808112773 860531056 463672967 290053636 64617066 212154916 502516665 560321978 653617312 592260132 887171298 48737863 311264784 598555114 917534967 400456768 173808730 818892742 37821664 726766415 717084751 147916892 785207802 9561265 983051384 120376100 36638358 750830519 443699086 528783081 392668792 88171593 712670976 645108811 792557400 16292190 550310768 135254589 463522148 314201477 717713718 967141511 602801084 424260959 67378395 651738693 623894773 20258850 167646112 172963430 24252311 693748760 25525749 931996206 882100895 584324894 895353346 23161780 386013182 744641829 858129441 837838437 741387031 241590965 925850977 642519423 528104773 690001253 380007429 995867799 126271571 157535332 511578115 172266003 752375042 311934195 669654406 466538929 340031879 880100585 605694317 971840766 688950794 611824430 21295561 937752544 496569127 215023680 102466659 134381837 954340465 979820209 166168883 645747857 597508330 672924582 393217258 727062604 807979917 234830682 438169961 911778418 61133765 80850841 772125768 87211017 813489139 954905669 878412112 670293870 644708331 776244181 20705025 115014864 712051063 846949329 503987469 68763828 644836563 488252247 137285339 535516783 924514095 980920729 490222597 850153135 214372145 938655325 394214106 327392755 774263152 701623932 137113821 205926670 312640762 699103843 701156676 459655592 560912334 230373013 48929657 574103229 585746275 121535014 894384029 865304348 944752928 608109377 222934272 130138089 899826401 898314660 869562026 338425627 895526777 767198495 675670486 552452095 614030634 332307481 680496753 779692467 589256238 473593355 438323615 542533036 429946674 937924610 306836535 354137136 504575446 956986145 100107074 41165533 111581486 952289053 928142976 579090720 738924100 542226111 663675618 811128511 494675603 252193894 754132241 578059856 962979981 883872898 820091878 159210431 66250775 465452570 994201840 272286924 555842312 610694471 190444273 641106314 789241261 884050871 945247841 262158050 499010376 948840235 465672682 41185038 198811788 1457657 621487850 462778910 665679395 946110346 908234228 621053046 496158504 695200989 312966479 777071438 977956781 434279170 827210101 601065265 6820663 541697440 395804566 393749630 666874173 244327281 280758802 798532074 15579564 418234048 351840515 766962940 765248358 171629042 949254321 408748688 246092990 998088698 827193883 690502485 385209341 456883938 872318837 951743567 501148641 84312137 64326308 302819157 757692953 195485664 647175108 578742164 26652106 199518700 762807203 737360394 226596877 662894535 48494659 53816332 819914862 109974111 587023195 916980160 190228847 772537014 545424599 46413476 799153411 447030368 665331540 46992389 159264019 723706888 445504677 664271241 852837884 485641707 332922449 1885606 628872975 770681435 978744850 236325928 370364688 686215741 77813335 340138159 534716088 884865932 360986307 823765806 495356211 314718164 838923948 977077358 760269475 876035255 779265436 14201993 100458139 363445868 588541908 136279407 72301220 232879163 952607428 735305060 964790459 802076418 744904596 311824256 648845265 70557107 511074207 298204718 114914378 959561171 441835762 511469997 23327359 980557821 597334226 343116946 184736060 664555101 213213235 322028612 68963906 803299638 372532289 807117695 345412294 66692956 350289627 801898194 563552240 379089083 249561875 183993632 902925661 145106126 454110127 936346659 578565534 960110888 320384939 651343588 328021175 13003247 282536629 792169541 395351713 284840028 34597808 665979767 711617992 530290492 661506865 271235716 410495373 344349554 498865669 305441478 145546949 215831154 191261609 7483758 817495096 476409544 15470800 334484478 30765347 168997007 490323425 287300815 819388854 925036539 695663991 98389388 108486039 376837583 362397407 464037813 696074846 934048743 30905501 445235997 563441175 446751152 769682663 693253229 614134211 446277291 999219752 221571999 914883542 777345262 806113663 267519619 681884859 660221346 611374910 836196669 744172363 441116038 731227499 804019909 794572122 2952554 737797186 994171238 922094123 198150325 56868016 592387391 158121718 833434080 301687514 684204741 341082473 375408889 422948500 176147263 71274020 735164961 336968683 890035017 829663548 661131278 650992540 706297169 702388408 666506890 934503834 577145885 558295831 346456818 51212172 824948036 613693385 281352376 477841228 868644272 58022321 611828705 488179049 191815202 976522154 623720327 848488870 90912174 118927614 593977432 579095929 595869242 649763312 880726805 783828109 160540420 722688052 629474068 245920064 703797017 516070258 918780607 501217061 744887263 182465990 609213459 352071556 288434572 906396227 557079842 722303957 334256556 356113259 436664977 592876617 783346079 398944697 739550746 20068929 224759576 918534167 84678412 461744340 976584351 816457832 287551174 890468174 301583376 53591551 51143999 750169003 576215322 631730214 779206529 295229728 298142657 280539801 935477801 243000979 949035229 727549448 870430697 626670878 848091801 721141400 660846087 620510864 50105076 11749987 870466267 930226667 926108227 648093171 673616469 190764007 535388077 237002955 928554100 470858606 83914670 34884062 325881296 201382430 70595733 476588566 869624849 402830538 409189125 961886414 890651765 231581689 16547960 977913433 389686350 854347366 749397431 270696569 106425218 736878462 724692323 58914536 709319945 734920677 973047920 436893139 798365555 79186929 686352548 867640921 37727584 624271405 480171805 759499536 584265733 200909784 769970376 83232897 191621037 928891236 49965291 492024743 322492470 701757687 399427483 496700532 228751248 387293933 212140615 885601357 877153858 81900628 324689451 998950537 133351397 235101550 64765150 534111477 408728998 928879667 890310853 740000338 833632968 654235852 512127901 768535766 281526048 936905753 969437429 420726439 893769111 577857580 589340849 342798435 492821676 631490252 688496521 833560987 603440367 657854963 647412615 646736724 602343815 258386512 614905997 348374148 347603629 682895302 839556301 529686683 643328559 918895083 844797775 738354167 890955758 960380042 80483950 308963950 732603488 850084385 435015259 575973321 766502159 131073636 304795033 553819203 801563415 351082680 714022271 685818638 428577196 480517305 979571897 669882574 353510546 259750068 558019015 799052828 260929699 210591790 808487805 281729540 860525645 553457243 327808898 498888327 724800017 237290151 497568465 925469466 280832773 762259249 370717242 431627557 964166483 390523723 298754274 152036997 211914424 49333244 335382718 505650699 198895878 228928126 626532636 659147771 449549986 593897152 147101979 56535694 438996230 711256036 892547631 946982000 885363008 911557826 808350878 722667330 82409074 941223524 217094661 553355289 817942608 432137352 761315283 945368061 454703013 717027873 71141836 857858667 945761998 867497430 653467783 67484628 516230205 286791810 308602865 30752796 182968567 426075570 311075272 66473755 806889751 531938858 915494945 759991584 324909129 91484768 600230883 264428905 581686863 605572351 911605578 530992299 138631040 853184358 204734564 38421904 782371652 980008999 635166615 955453748 368627865 411466120 260119065 834437544 300647057 975109637 518672503 511648880 824511186 492147916 851789071 789685508 575006740 850831935 43101845 707731794 975487143 53365878 542515858 854996026 893845738 434725306 72070112 7271953 309316565 999831819 406066480 735640351 652112752 564499612 70290820 684323873 499191641 749324369 504757941 766453447 632184643 304069192 558235118 623658039 735355761 426448717 719756335 487323016 502974783 915223908 855393483 943012936 383278490 223984707 387418090 131325687 421710722 116962261 95872264 208353674 267972751 789704888 8457076 543921641 866115434 335972032 477731538 368424561 80129103 913872754 34892697 406838386 703169938 684263562 605042070 486062257 541066262 596110453 781910631 70809064 315442135 776887511 823547393 24936258 6292578 230251271 742583083 498119903 421496152 527388814 110578177 167198294 908456175 271527340 597220465 200916270 875040368 708216275 878103745 408213347 367539898 555510826 886777351 274307048 363483326 608671755 310439087 570609951 404074497 38437253 321510138 63416162 424885021 787345370 920853881 292521854 54874687 403095554 542440854 908096307 986621355 645384999 423170059 377786293 760175156 325520679 776873832 594563630 673917892 697042198 962951825 134386234 896274394 989503929 301304126 955543145 83420167 79454731 27307642 304654016 852957808 634500027 30953765 978823480 59342415 36783533 727207538 884623422 753710706 731477621 621098601 678410033 935391162 323817183 628236390 851250920 112200606 686503018 108973464 607313449 582948006 784187335 576301955 510983731 425129712 889536863 460949119 72117557 884919981 783466955 106409014 325095636 528251045 681633881 756944426 297758889 743595695 269926798 485397036 777918657 552617530 936633759 343979238 730697755 148524744 25111286 255769683 310322990 892385901 875990707 754983489 854286944 388657748 995119912 511382742 653489808 396665146 593796700 698541832 887668109 632534001 166226570 575061283 656393884 709225439 183637663 183274824 942072054 287704444 899823807 636131304 223801927 13746391 539678400 674245196 673847089 992543762 275915437 966722321 68607431 263301602 643781444 23628452 448551442 849315856 628266617 343497162 466547855 491914746 368879089 705147419 640581295 790810386 41593224 683261570 760539478 88320350 691125195 211114431 971472221 202796023 682982015 948757221 984938513 345960330 967482648 416966108 636987825 292424922 473969474 604844512 496781811 644185915 89581916 998699008 698611327 512503065 13747448 584975264 112351603 796741743 782148445 638801143 115020765 610707793 309012485 12010386 29613636 142153826 72586527 41316559 252533536 139449694 845238286 327152227 586262877 883478418 699223016 208102101 763833053 658584671 601583607 971630592 496945395 437927866 375457340 797462421 739002600 958698159 600835559 203496854 103615609 294792666 724016608 637902044 394218583 436244972 731012418 650038675 5086886 842689580 326119386 385380281 704697214 849118963 259462828 264029090 404183405 305703983 597318254 934640759 770285043 401673185 123505164 413864626 672344069 478146207 913736482 607027363 683038347 364551186 33366661 22303470 17225443 544839545 380781755 744053003 591790939 580884005 453390461 927330757 106599354 967376379 212797756 127147964 620082616 987391989 402992026 323241443 90537345 268624545 439942637 349666306 577975350 678183584 494301887 323181365 783024747 236146984 22221648 833681515 503181482 837466755 920524306 339443431 171117551 568736398 742287660 161157315 564359211 384401723 518487801 535499112 204972738 795251983 445330054 873923608 869706508 654804388 499181079 643796581 121568983 621627433 245937570 905574582 988475107 95215581 442193234 914025161 70441317 907645079 452250117 983488043 613437573 452207425 259049935 791388866 404206816 958408792 384349301 163195716 268951558 518920302 545663475 382430653 147020541 551762601 845972215 123751949 157016764 650835265 711058275 531233896 368615089 23836677 382196430 555036628 790165308 777137879 311627524 532797614 331663409 459434539 720317058 112615717 204982106 971441548 113030907 427535294 686989043 748747288 691988949 792008142 324374572 756836607 213823661 337860099 898912683
